В последние годы всё больше пользователей выбирают VPS и Dedicated серверы для работы своих web-ресурсов вместо привычного Виртуального хостинга. Однако, большинство из них не имеют навыков в системном администрировании и актуальным становится выбор панели управления сервером. Панель VestaCP по праву завоевала доверие пользователей и становится всё более популярной, а установка VestaCP является простой и занимает мало времени.
Преимущества панели управления VestaCP
- В отличии от популярных cPanel и ISP Manager, панель VestaCP является абсолютно бесплатной;
- Простой и интуитивно понятный web-интерфейс, который для многих пользователей является более привлекательным, нежели у платных аналогов;
- В отличии от других панелей, пост-установочная настройка VestaCP является простой и быстрой, что даёт возможность сразу же начать работу с сервером;
- Широкий функционал панели и гибкие настройки сервера непосредственно из web-интерфейса;
- Кастомизация необходимого набора программного обеспечения;
- Стабильная работа и минимальное количество багов, которые, по личным наблюдениям, на порядок чаще встречаются в платных аналогах и их решение требует вмешательства администраторов;
Из недостатков панели VestaCP можно выделить:
- Система резервного копирования (backup) не позволяет восстанавливать резервные копии непосредственно в web-интерфейса, а только через командную строку с применением системного скрипта;
- Отсутствие поддержки выбора версий PHP (существуют сторонние плагины);
- Отсутствие поддержки функционала CloudLinux, однако, у большинства пользователей нет необходимости в использовании данного дистрибутива, предназначенного, в первую очередь, для Виртуального хостинга и хостеров для разграничения прав пользователей на уровне сервера, а не приватного использования;
- Отсутствие встроенного файлового менеджера;
Исходя из всех перечисленных преимуществ и недостатков панели управления VestaCP, она является оптимальным выбором для приватного использования для большинства web-мастеров.
Установка VestaCP на CentOS 7
Для установки панели управления VestaCP нам понадобится “чистый сервер” с предустановленным дистрибутивом CentOS7-minimal. Minimal-редакция является оптимальной, так как содержит исключительно необходимый набор предустановленного софта. В случае использования других редакций возможен:
- Конфликт при установке пакетов, необходимых для работы VestaCP;
- Наличие софта, который не востребован в будущем и будет создавать лишь дополнительную нагрузку на сервер.
В первую очередь, рекомендуем настроить на сервере SSH авторизацию по ключу!
Теперь приступим непосредственно к установке панели VestaCP. Для этого нам понадобится установочный файл, который доступен на оф. сайте: https://vestacp.com/install/
В случае с VestaCP, на странице загрузки доступен конфигуратор необходимого пакета устанавливаемого софта. Вы можете отключить некоторые пакеты, которые в будущем не будут использоваться. Это поможет избежать brute-force и flood атак. В нашем случае, не планируется использовать mail-сервер (для этого есть специализированные сервисы), поэтому мы не будем устанавливать компоненты для работы с почтой. Так же, если Вы используете сторонние серверы имён, устанавливать DNS сервер нет необходимости.
Мы должны ввести базовые настройки для работы панели управления:
- hostname – имя Вашего сервера;
- Email – на данный почтовый ящик будут приходить уведомления панели VestaCP;
- Password – пароль для пользователя admin, который будет создан в процессе установки;
Нажимаем Generate Install Command и ниже будут сгенерированы команды, которые следует выполнить на сервере. Для этого подключаемся к серверу по ssh.
Загружаем скрипт для установки VestaCP:
curl -O http://vestacp.com/pub/vst-install.sh
Запускаем установщик:
bash vst-install.sh --nginx yes --apache yes --phpfpm no --named yes --remi yes --vsftpd yes --proftpd no --iptables yes --fail2ban yes --quota no --exim no --dovecot no --spamassassin no --clamav no --softaculous no --mysql yes --postgresql no --hostname server.ваш_домен.com --email ваш@email --password ваш_пароль
Заметьте, если Вы используете не Minimal редакцию CentOS 7, требуется добавить к команде атрибут –force:
bash vst-install.sh --nginx yes --apache yes --phpfpm no --named yes --remi yes --vsftpd yes --proftpd no --iptables yes --fail2ban yes --quota no --exim no --dovecot no --spamassassin no --clamav no --softaculous no --mysql yes --postgresql no --hostname server.ваш_домен.com --email ваш@email --password ваш_пароль --force
Установщик проводит проверку компонентов и если всё в порядке, нам необходимо подтвердить установку:
Установка VestaCP займёт некоторое время…
Готово, установка VestaCP на CentOS 7 сервере завершена. Скопируем и сохраним адрес web-интерфейса, логин и пароль в надёжном месте.
Следует отметить, что по-умолчанию устанавливается PHP 7.4.
Обновление MariaDB
Начиная с CentOS 7, MariaDB является стандартным сервером баз данных mysql. Однако, в базовом репозитории доступна версия MariaDB 5.5, которая давно является не актуальной, поэтому нам следует обновить её.
Делаем резервную копию файла конфигурации my.cnf:
cp /etc/my.cnf /etc/my.cnf.backup
Делаем резервную копии баз данных:
mysqldump -u root --all-databases > /tmp/all-database.sql
Останавливаем и удаляем MariaDB 5.5:
systemctl stop mariadb yum remove mariadb-server mariadb mariadb-libs -y
Добавляем репозиторий MariaDB 10.4 в yum. Для этого открываем в редакторе файл:
vi /etc/yum.repos.d/MariaDB10.repo
В данный файл добавляем:
# MariaDB 10.4 CentOS repository list # http://mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.4/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Для сохранения и закрытия в редакторе vi нажимаем Esc и выполняем команду :wq (Enter для выполнения).
Очищаем yum-кеш:
yum clean all
Устанавливаем на сервер MariaDB 10.4:
yum -y install MariaDB-server MariaDB-client -y
Восстанавливаем файл конфигурация my.cnf:
rm -f /etc/my.cnf mv /etc/my.cnf.backup /etc/my.cnf
Запускаем MariaDB 10.4 и добавляем сервис в автозапуск при загрузке ОС:
systemctl start mariadb systemctl enable mariadb
Обновляем базы данных MariaDB 10.4:
mysql_upgrade
Готово! На этом обновление MariaDB и установка VestaCP на CentOS 7 сервере завершена!
Настройка VestaCP
Теперь перейдём к настройке VestaCP. Для этого перейдём в web-интерфейс по ссылке, полученной по завершению установки панели:
https://ip_вашего_сервера:8083/
Вы увидите предупреждение о некорректном SSL-сертификате и возможной угрозе (мы исправим это чуть позже). Игнорируем и продолжаем. Авторизируемся в панели управления, используя пользователя admin.
Перед нами интерфейс панели управления VestaCP. В первую очередь, если Вы используете собственные DNS серверы, следует их задать. Для этого редактируйте пользователя admin:
Переходим на вкладку WEB и добавляем основное доменное имя на сервер:
Если Вы используете собственные серверы имён, переходим во вкладку DNS и создаём А записи ns1 и ns2:
Перенастраиваем у регистратора DNS серверы на новые. Если используются сторонние DNS, то перенаправляем А записи домена на новые IP.
Если Вы переносите сайт, то сначала загрузите его резервную копию (файлы, базы данных и т.д.) и только потом перенаправляйте DNS на новый сервер!
После того, как DNS обновятся и домен станет доступен с нового сервера, переходим во вкладку WEB и редактируем доменное имя:
- Web Template – режим в котором будет запускаться php. Вы можете по желанию выбрать другой.
- Включаем поддержку SSL и генерируем бесплатный Let’s Encrypt сертификат (если нет платного).
Сохраняем и переходим в раздел Server и настраиваем:
- Часовой пояс сервера;
- Язык интерфейса;
Устанавливаем SSL сертификат для панели управления. Для этого выбираем домен, для которого создали сертификат, из списка:
Сохраняем изменения, закрываем вкладку с панелью в браузере и авторизируемся по адресу:
https://ip_вашего_сервера:8083/
Готово, предупреждения об угрозе в браузере больше нет. Таким образом, первоначальная установка и настройка VestaCP на CentOS 7 сервере завершена.
Заключение
В данной статье мы рассмотрели установку VestaCP на CentOS 7 сервер и её базовую настройку. Панель VestaCP является функциональным, но в тоже время простым в использовании инструментом управления web-сервером.