Автоматический способ: один скрипт из личного кабинета подготавливает весь сервер (веб-стек Apache + PHP, база данных, инструменты безопасности, cron). Дальше — развернуть панель, выпустить SSL и ввести лицензию. Работает на Ubuntu/Debian: на свежем VPS настраивает всё с нуля, на уже настроенном сервере — только аддитивно (профиль «Настроенный сервер», шаг 01). Все команды ниже — по порядку, просто листайте сверху вниз.
monitor.example.com — ваш домен; 203.0.113.10 — реальный IP сервера; /var/www/monitor — корень панели (где лежат public/, assets/, config.php); пароль БД придумайте свой.
jail.local), root-crontab, правила UFW, конфиг Apache. Если сервер уже настроен (рабочая панель, сайты, почта, свои jail'ы) — выбирайте профиль «Настроенный сервер»: он вносит только аддитивные изменения и не трогает ваш файрвол, Fail2ban, почту, SSH и sysctl. При обнаружении хостинг-панели скрипт переключается на этот режим сам. Перед первым запуском можно включить сухой прогон (галочка в кабинете) — он покажет, что будет сделано, ничего не меняя. На рабочем сервере на всякий случай сделайте снимок (snapshot).
my.arciveo.com → раздел «Настройка сервера» (доступен после оформления Arcivéo Monitor). Она привязана к вашему аккаунту и содержит персональный токен.
Скрипт подготавливает весь сервер: веб-стек (Apache + PHP), базу данных, инструменты для SSL, полный набор средств защиты и cron-задания (Lynis, SMART, debsums, Logwatch, ежедневный отчёт, обновление ipsum).
1) Выберите уровень защиты (в кабинете, перед копированием команды):
2) Выполните на сервере под root команду из кабинета — она выглядит так:
Чтобы открывать панель по адресу вроде monitor.example.com и получить бесплатный SSL, домен должен указывать на сервер. В панели управления DNS (у регистратора или хостера) создайте A-запись:
Через несколько минут (иногда до часа) проверьте, что домен указывает на сервер:
/var/www/monitor и настроила сайт Apache (DocumentRoot на корень панели, PHP-FPM, AllowOverride для .htaccess). Отдельно создавать каталог и vhost не нужно — просто залейте файлы и выставьте права.
my.arciveo.com → «Загрузки». Распакуйте архив перед загрузкой на сервер.
Залейте содержимое дистрибутива в /var/www/monitor (чтобы внутри оказались public/, assets/, config.php и т.д.) — по SFTP/SCP (FileZilla / WinSCP) или командой scp с локального компьютера:
ServerName), его передают в команду автонастройки ещё на шаге 01: … | sudo bash -s -- monitor.example.com (или указывают домен в поле «Домен панели» в кабинете). Если домен не передали — панель отвечает на любой хост и по IP, а ServerName пропишет certbot при выпуске SSL (шаг 06); переустанавливать ничего не нужно.
root или по SFTP, файлы принадлежат root, и веб-сервер (www-data) не сможет их прочитать — панель откроется пустой или с ошибкой 403 (в логе: .htaccess unreadable / directory not executable). Команда ниже это чинит:
Откройте себе заливку файлов по SFTP. После команды выше все файлы принадлежат www-data, а FileZilla / WinSCP подключаются под вашим пользователем — при загрузке появится ошибка SSH_FX_PERMISSION_DENIED (Permission denied). Выберите один из двух вариантов.
Вариант A — ACL только для вашего пользователя (рекомендуется). Право записи получаете только вы; веб-сервер по-прежнему не может переписать код панели:
Вариант B — через группу www-data. Проще, но право записи в файлы панели получает и веб-сервер: при уязвимости в PHP код можно будет подменить. Порядок команд важен — config.php и рабочие папки закрываются последними:
id deploy — в списке групп должна появиться www-data; ls -ld /var/www/monitor — права drwxrwsr-x, буква s вместо x означает, что setgid установлен.
Создайте базу и пользователя, затем импортируйте схему. Блок с БД вставляется в терминал целиком (sudo mysql входит root по unix-сокету — пароль root не нужен). monitor_db и monitor_user — имена для примера, можете задать любые свои; запомните имя базы, пользователя и пароль — впишете их в config.php на следующем шаге:
admin при первом заходе в браузер (из database/db.sql), если БД пустая.
www-data).
config.php в корне панели (/var/www/monitor/config.php) — единственный файл, который нужно отредактировать руками. Все настройки панели заданы в нём константами define(). Откройте его в редакторе:
Подставьте свои значения в подсвеченные места; остальное оставьте как есть:
Что менять:
DB_NAME, DB_USER, DB_PASS — ровно те же имя базы, пользователь и пароль, что вы задали при создании БД в шаге 04 (если оставили примеры — monitor_db / monitor_user). DB_HOST и DB_CHARSET не трогайте.APP_URL — полный адрес панели с https://, без слэша в конце и без www. Должен совпадать с доменом, на который активируете лицензию (шаг 07), иначе ключ будет отклонён.TIMEZONE — ваш часовой пояс (список — timedatectl list-timezones). Влияет только на то, как панель показывает даты; на время запуска cron-заданий не влияет (там действует пояс системы).SESSION_LIFETIME — через сколько секунд бездействия панель попросит войти заново (по умолчанию 8 часов). Напр. 3600 = 1 час, 86400 = сутки.display_errors, log_errors, error_log) — оставьте по умолчанию.Сохраните файл (Ctrl+O, Enter, затем Ctrl+X) и перезапустите PHP-FPM — иначе из-за OPcache изменения не применятся:
640 (выставлены в шаге 03) и явный запрет в корневом .htaccess. Не выкладывайте его в публичные репозитории и не передавайте в поддержку с реальным паролем.
http:// вы не сможете войти.
certbot и плагин для Apache уже установлены автонастройкой. DNS домена уже должен указывать на сервер (шаг 02). Выпуск в одну команду:
Y.<VirtualHost *:443>, настроит редирект http→https и автопродление. В конце — Successfully enabled HTTPS.
dig +short monitor.example.com возвращает IP сервера и открыты порты 80/443 (sudo ufw allow 80,443/tcp).
После выпуска: https://monitor.example.com открывается с замком, http:// редиректит на https://.
Откройте https://monitor.example.com, войдите admin / useradmin и пройдите чеклист:
ARCIVEO-… из кабинета активируйте на свой домен и вставьте ключ в «Настройки» → «Лицензия». Подробнее.public/start_db.php, если он остался: он позволяет без авторизации пересоздать базу. Пока файл лежит в корне панели или в public/, панель предупреждает о нём красным баннером.