Как установить VestaCP на Ubuntu или CentOS

Введение

VestaCP это панель управления хостингом с открытым исходным кодом, которая позволяет легко управлять веб-серверами, DNS-серверами, почтовыми серверами, базами данных и многим другим через простой веб-интерфейс. Она поддерживает такие популярные программы, как Apache, Nginx, PHP, MySQL, Exim, Dovecot и другие.

В этом подробном руководстве мы расскажем, как установить VestaCP с нуля на свежеустановленный сервер Ubuntu 20.04/22.04 или CentOS 7. Мы подробно рассмотрим каждый шаг, чтобы VestaCP был полностью настроен и готов к управлению хостинг-аккаунтами.

Предварительные условия

  • Сервер под управлением Ubuntu 20.04/22.04 или CentOS 7 с правами root или пользователя с привилегиями sudo.
  • Статический IP-адрес, назначенный серверу.
  • Порты 80 и 443 открыты на брандмауэре для веб-трафика.
  • Зарегистрированное доменное имя, указывающее на IP-адрес сервера. Оно будет использоваться для доступа к панели администрирования VestaCP.

Шаг 1 — Установка необходимых пакетов

Сначала нам нужно установить некоторые необходимые пакеты, которые нужны VestaCP для правильной работы.

Для Ubuntu 20.04/22.04

Выполните следующие команды для установки curl, nano, htop, wget:

$ sudo apt update
$ sudo apt install curl nano htop wget -y

Для CentOS 7

Выполните следующие команды для установки curl, nano, htop, wget:

$ sudo yum install epel-release -y
$ sudo yum update 
$ sudo yum install curl nano htop wget -y

Эти пакеты предоставляют полезные инструменты для загрузки файлов, редактирования конфигураций, мониторинга процессов и многого другого.

Шаг 2 — Отключите Apache/Exim

Если Apache и Exim установлены по умолчанию, нам нужно удалить их перед установкой Nginx и Postfix.

Для Ubuntu 20.04/22.04

$ sudo apt remove apache2* exim4* -y
$ sudo apt purge apache2* exim4* -y
$ sudo rm -rf /etc/apache2 /etc/exim4 

Для CentOS 7

$ sudo yum remove httpd* exim -y
$ sudo rm -rf /etc/httpd /etc/exim

Это полностью удаляет эти пакеты из системы, чтобы избежать конфликтов.

Шаг 3 — Скачайте программу установки VestaCP

Теперь мы загрузим последний выпуск скрипта автоматического установщика VestaCP.

Выполните эту команду на Ubuntu и CentOS, чтобы загрузить скрипт:

$ curl -O http://vestacp.com/pub/vst-install.sh

Шаг 4 — Установка VestaCP

Теперь мы запустим сценарий установки, чтобы установить VestaCP с необходимыми нам компонентами.

На Ubuntu 20.04/22.04 запустите:

$ sudo bash vst-install.sh --nginx yes --apache no --phpfpm yes --named yes --remi no --vsftpd yes --proftpd no 
--iptables yes --fail2ban yes --quota no --exim no --dovecot yes --spamassassin yes --clamav yes --softaculous no  
--mysql yes --postgresql no --hostname yourdomain.com --email [email protected] --password mypassword

Объяснение основных опций:

-nginx: Установка и настройка веб-сервера Nginx
-apache: Не устанавливайте Apache
-phpfpm: Установите PHP-FPM для обработки PHP-страниц
-named: Установите BIND для DNS-сервера
-remi: Не требуется на Ubuntu
-vsftpd: Установите очень безопасный FTP-демон
-iptables: Настройте брандмауэр с помощью iptables
-fail2ban: Установите fail2ban для предотвращения вторжений
-quota: Не устанавливать управление квотами
-exim: Не устанавливать почтовый сервер Exim -dovecot: Установить POP3/IMAP-сервер Dovecot
-spamassassin: Установите антиспамовую защиту SpamAssassin
-clamav: Установить антивирусное сканирование ClamAV
-mysql: Установите сервер MySQL

На CentOS 7 выполните:

$ sudo bash vst-install.sh --nginx yes --apache no --phpfpm yes --named yes --remi yes --vsftpd yes --proftpd no  
--iptables yes --fail2ban yes --quota no --exim no --dovecot yes --spamassassin yes --clamav yes --softaculous no   
--mysql yes  --postgresql no --hostname yourdomain.com --email [email protected] --password mypassword

Единственное отличие заключается в том, что мы добавляем --remi yes , чтобы включить репозиторий Remi для последней версии PHP на CentOS.

Теперь программа установки запустится, установит все компоненты и настроит их автоматически. Это может занять от 5 до 15 минут в зависимости от скорости интернет-соединения вашего сервера.

После завершения установки обратите внимание на URL-адрес администратора, имя пользователя и пароль, указанные в конце. Мы будем использовать их для входа в VestaCP.

Шаг 5 — Вход в панель администратора VestaCP

Чтобы получить доступ к панели администратора VestaCP, просто откройте в веб-браузере URL-адрес, указанный в конце программы установки:

https://yourdomain.com:8083

Введите указанные имя пользователя и пароль администратора.

После этого перед вами откроется панель управления VestaCP.

По умолчанию имя пользователя администратора admin

Шаг 6 — Защита доступа к VestaCP

По умолчанию VestaCP позволяет входить в систему через HTTP, что небезопасно. Сейчас мы настроим SSL и заблокируем доступ по HTTP.

Активация SSL (HTTPS-доступ)

Перейдите на вкладку Web и подраздел SSL в VestaCP. Выберите свой домен и выберите Let's Encrypt в качестве провайдера SSL. Установите флажок для SSL и измените порт на 443. Сохраните изменения.

Теперь VestaCP установит SSL-сертификат для вашего домена, выданный Let’s Encrypt, и активирует его. Это может занять несколько минут.

После активации зайдите на VestaCP по новому HTTPS-адресу:

https://yourdomain.com

Войдите в систему, чтобы убедиться, что все работает.

Блокировка HTTP-доступа

Чтобы предотвратить небезопасный HTTP-доступ, необходимо отключить порт 80 и сохранить правила брандмауэра в VestaCP:

Вкладка Web -> Брандмауэр

  • Снимите флажок для порта 80
  • Нажмите кнопку Сохранить изменения

Теперь вы сможете получить доступ к VestaCP только по HTTPS-адресу.

Шаг 7 — Добавление пакетов хостинга

Теперь мы можем начать добавлять пакеты хостинга, которые впоследствии будут назначены учетным записям пользователей.

Перейдите на вкладку «Пакеты» и нажмите кнопку Добавить новый пакет

Давайте создадим базовый пакет виртуального хостинга со следующими параметрами:

  • Название пакета: starter
  • Квота дискового пространства: 5 ГБ
  • Квота на пропускную способность: 100 ГБ
  • Учетные записи электронной почты: 10
  • Переадресаторы электронной почты: 20
  • Автоответчики электронной почты: Включено
  • Дисковые иноды: 300000
  • Директивы Apache: По умолчанию
  • Макс. домены: 5
  • Максимальные поддомены: 10
  • Максимальные псевдонимы: 20
  • Максимум припаркованных доменов: 5
  • Макс. аддонные домены: 3

Нажмите Сохранить чтобы добавить пакет.

Создайте дополнительные пакеты на основе ресурсов, которые вы хотите назначить учетным записям пользователей.

Шаг 8 — Добавление учетных записей пользователей хостинга

Теперь мы можем приступить к созданию учетных записей хостинга и назначению им пакетов, которые мы создали ранее.

Перейдите на вкладку Пользователи и нажмите кнопку Создать пользователя

Для первой учетной записи используйте эти примерные данные:

  • Имя пользователя: john
  • Пакет: стартер
  • Пароль: password123
  • Электронная почта: [email protected]
  • Имя: Джон
  • Фамилия: Доу

Нажмите Создать пользователя , чтобы добавить учетную запись.

Это автоматически создаст все необходимые каталоги, базы данных, учетные записи электронной почты и конфигурации для хостинг-аккаунта на основе выделенных лимитов пакета.

Вы можете повторить процедуру, чтобы создать больше учетных записей.

Шаг 9 — Настройка серверов имен в VestaCP

Чтобы ваши доменные имена указывали на этот сервер, вам нужно настроить серверы имен в VestaCP.

Вкладка DNS -> Домен -> Добавить домен

Просто введите зарегистрированное доменное имя, например:

yourdomain.com

Сохраните изменения.

Это автоматически сгенерирует серверы имен по умолчанию для вашего сервера:

ns1.yourdomain.com 
ns2.yourdomain.com

Здесь же вы можете создать записи A для вашего домена и поддоменов.

Шаг 10 — Изменение именных серверов у регистратора доменов

Войдите в учетную запись регистратора доменных имен и обновите серверы имен:

ns1.yourdomain.com
ns2.yourdomain.com 

Это передаст управление DNS для вашего домена серверу VestaCP. Для полного вступления в силу может потребоваться от 2 до 24 часов.

Теперь ваш сервер VestaCP является официальным сервером имен для принадлежащих вам доменов.

Шаг 11 — Настройка почтовых служб

Теперь, когда у нас настроены учетные записи хостинга, давайте настроим почтовые службы для отправки и получения писем должным образом.

Настройка Postfix для отправки писем

VestaCP использует Postfix для отправки исходящих писем. Нам нужно указать имя хоста и домены, которые он будет обрабатывать.

Перейти к:

Вкладка «Почта -> Почтовый сервер -> Настройка почтового сервера

  • Имя хоста: mail.yourdomain.com
  • Домены: yourdomain.com

Сохраните изменения и перезапустите Postfix при появлении соответствующего запроса.

Это позволяет Postfix принимать исходящую почту для тех доменов, которые будут отправлены на другие почтовые серверы.

Настройка службы Dovecot POP3/IMAP

Dovecot используется для получения и извлечения электронной почты по протоколам POP3 и IMAP.

Перейти к:

Вкладка «Почта -> Почтовый сервер -> Настройка почтового сервера

  • Сервер IMAP: да
  • POP3-сервер: да
  • Порт IMAP: 143
  • Порт POP3: 110
  • Порт SSL/TLS: 995

Сохраните изменения и перезапустите Dovecot при появлении соответствующего запроса.

Включение этих протоколов позволяет пользователям проверять почту с помощью любого почтового клиента.

Настройка SpamAssassin

SpamAssassin будет обрабатывать входящие сообщения электронной почты, чтобы обнаружить и пометить спам. Включите его на вкладке «Почта»:

Вкладка «Почта -> SpamAssassin -> Активировать SpamAssassin

Сохраните изменения и перезапустите SpamAssassin.

Письма, признанные спамом, теперь будут помечены в строке темы для пользователей.

Настройка антивирусного сканирования ClamAV

ClamAV обеспечивает антивирусную защиту входящей электронной почты. Включите ее с помощью:

Вкладка «Почта -> ClamAV -> Активируйте ClamAV

Сохраните изменения и перезапустите ClamAV.

Письма с обнаруженными вирусами можно настроить так, чтобы они отклонялись, удалялись или просто отмечались.

Шаг 12 — Настройка службы резервного копирования

Очень важно настроить автоматическое резервное копирование, которое будет выполняться регулярно на случай катастрофы. VestaCP имеет встроенные возможности резервного копирования.

Перейти на:

Вкладка резервного копирования -> Резервное копирование и восстановление -> Добавить задание резервного копирования

Создайте задание резервного копирования с этими настройками:

  • Имя: Ежедневное резервное копирование
  • Каталоги резервного копирования: Выберите все в разделах Web, DNS и Mail
  • Базы данных: Выберите все базы данных MySQL
  • Уровень сжатия: 9
  • Назначение: Локальная резервная копия
  • Расписание: Ежедневно

Это позволит ежедневно создавать резервные копии веб-сайтов, зон DNS, почтовых аккаунтов и баз данных и хранить их в локальном сжатом виде.

Также следует настроить резервное копирование на удаленный сервер.

Шаг 13 — Установка сертификатов SSL/TLS

Чтобы настроить HTTPS-доступ для ваших хостинг-аккаунтов, необходимо установить SSL/TLS-сертификаты.

VestaCP позволяет легко добавить бесплатные SSL-сертификаты Let’s Encrypt.

Просто перейдите по ссылке:

Вкладка SSL -> Let’s Encrypt

Затем введите каждое нужное вам доменное имя в отдельной строке и нажмите Выдать SSL-сертификат.

Let’s Encrypt автоматически проверит принадлежность домена и сгенерирует сертификаты, которые будут автоматически настроены для доменов в VestaCP.

Очень просто!

Заключение

Это полное руководство по установке VestaCP на Ubuntu и CentOS.

Некоторые ключевые моменты:

  • VestaCP предоставляет интуитивно понятный интерфейс для управления услугами хостинга
  • Автоматизированная установка упрощает развертывание
  • Возможность работы с веб-сайтами, электронной почтой, DNS, базами данных и т. д.
  • Встроенные функции безопасности, такие как брандмауэр, fail2ban, ClamAV
  • Доступны SSL-сертификаты с интеграцией Let’s Encrypt
  • Решения для резервного копирования, предотвращающие потерю данных
  • Предназначены для масштабирования с учетом возрастающих рабочих нагрузок

Установив VestaCP, вы получаете платформу, способную обеспечить хостинг для потенциально тысяч пользователей, при этом обеспечивая надежность, безопасность и простоту использования.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *