Бесплатная панель управления сервером Hestia

Домашняя страница: HestiaCP. Панель управления Hestia находится под лицензией GPL v3 и основана на проекте VestaCP.

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

Системные требования Hestia:

Панель управления сервером (web server control panel) Hestia поддерживает только 64 битные операционные системы Linux: Debian 9, Debian 10, Ubuntu 16.04 LTS, Ubuntu 18.04 LTS, Ubuntu 20.04 LTS. Дистрибутивы CentOs не поддерживаются.

Плюсы Hestia CP:

Минусы Hestia CP:

Задача: экономить, экономить и еще раз экономить, но диски большие нужны и быстрый.

И вы знаете нашел и я рекомендую если нужен быстрый VDS/VPS с большими дисками заказывайте у Zomro.

Я выбрал конфигурацию:

Операционную система установил Ubuntu 20.04.2 LTS.

Вам нужно будет подключиться к вашему серверу как root, либо напрямую с консоли, либо удаленно с помощью SSH.

Обновите операционную систему, проверьте имя компьютера, локаль, время. Обычно достаточно просто обновить дистрибутив командами:

# apt update
# apt list --upgradable
# apt upgrade

и добавить несколько системных утилит:

# apt install lsb-release htop net-tools

Также проверьте имя компьютера командой hostname с ключом f. Имя сервера должно соответствовать FQDN, говоря по простому если вы можете используя имя сервера (а не его IP) получить доступ используй протокол SSH - то ОК. Безусловно, если вы планируете использовать полноценный почтовый сервер вам требуется сделать дополнительные проверки - изучите чек лист по настройке VPS/VDS, выделенного сервера Linux с нуля.

root@vps100:~# cd /root
root@vps100:~# wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh

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

# bash hst-install.sh
Welcome to the Hestia Control Panel installer!

Если по каким-то причинам вам нужно изменить параметры по умолчанию, вы можете воспользоваться такой командой

bash hst-install.sh -f -y no -e email@domain.tld -p p4ssw0rd -s hostname.domain.tld

После запуска установщика на Шаг 4, я получил предупреждение, что Hestia не хочет работать с UFW (Uncomplicated Firewall) настройка.

Я собcвенно привык работать напрямую с iptables, поэтому я подтверждаю удаления пакета ufw. WARNING: The following packages are already installed ufw* Would you like to remove the conflicting packages? [y/n] y

На следующем шаге будет показано какие компоненты Hestia автоматически установит. Ознакомьтесь с ними и подтвердите, нажав Y.

         _   _           _   _        ____ ____
               | | | | ___  ___| |_(_) __ _ / ___|  _ \
               | |_| |/ _ \/ __| __| |/ _` | |   | |_) |
               |  _  |  __/\__ \ |_| | (_| | |___|  __/
               |_| |_|\___||___/\__|_|\__,_|\____|_|

                          Hestia Control Panel
                                  1.3.2
                            www.hestiacp.com

========================================================================

Thank you for downloading Hestia Control Panel! In a few moments,
we will begin installing the following components on your server:
  1. NGINX Web / Proxy Server
  2. Apache Web Server (as backend)
  3. PHP-FPM Application Server
  4. Exim Mail Server + ClamAV + SpamAssassin
  5. Dovecot POP3/IMAP Server
  6. MariaDB Database Server
========================================================================


Would you like to continue with the installation? [Y/N]: Y
  • На следующем шаге введите email администратора (Please enter admin email address)
  • Введите имя компьютера (Please enter FQDN hostname)

В конце скрипт выведет ссылку (Admin URL), логин и пароль на управление панелью. И предложит перегрузить сервер. Копируем данный для доступа и перегружаем сервер.

Все! Установка Hestia CP завершена. Дальнейшее управление веб панелью Hestia CP происходит при помощи вебинтерфейса (Admin URL), с использованием порта 8083.

Проверить работу демона hestia можно командой lsof:

# lsof -i:8083
COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
hestia-ng 522  root    6u  IPv4  19159      0t0  TCP *:8083 (LISTEN)
hestia-ng 523 admin    6u  IPv4  19159      0t0  TCP *:8083 (LISTEN)

Переходим по ссылке Admin URL, указываем логин и пароль. И попадаем в такой интерфейс.

И сразу выключаем автоматической обновление панели Hestia, ибо последствия неконтролируемого обновления, без бекапа можно разгребать долго. Для этого переходим в меню Server → Updates и нажимаем кнопку Automatic Updates, должно получиться как на скриншоте.

Безопасный фаервол - это фаервол в котором по умолчанию все запрещено.

Напомню, что ранее Hestia злостно:) удалила UFW и я наделся что будет из коробки настроен iptables правильно. Но нет, были прописаны правила для определённых портов и настроен fail2ban, но правила по умолчанию открыты. Правила брандмауэра по умолчанию, после установки Hestia, посмотрим командой iptables с ключами -nL -v:

iptables -nL -v
Chain INPUT (policy ACCEPT 7166 packets, 1063K bytes)
 pkts bytes target     prot opt in     out     source               destination
 3325  773K fail2ban-HESTIA  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8083
   21  1324 fail2ban-MAIL  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 25,465,587,110,995,143,993
    0     0 fail2ban-FTP  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:21
  928  101K fail2ban-SSH  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22
 7476 1220K fail2ban-RECIDIVE  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 1:65535
 
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
 
Chain OUTPUT (policy ACCEPT 7858 packets, 6693K bytes)
 pkts bytes target     prot opt in     out     source               destination

После изучения файлов с настройками фаервола /etc/iptables.rules и /usr/local/hestia/data/firewall/rules.conf я пришел к выводу, что настройки правильные, но они погрузились только частично. Используя команду iptables-restore перегружаем правила из файла /etc/iptables.rules.

# iptables-restore /etc/iptables.rules

Поле этого входящие пакеты по умолчанию стали блокироваться и загрузились дополнительные правила. Перезагружаем сервер и видим, что восстановились небезопасные разрешающие правила! Если кто-то знает как настроить правила по умолчанию - напишите мне на почту.

Функция переключения версии PHP для конкретного сайта должна быть в каждой панели для управления хостингом. Ибо каждая CMS выдвигает свои требования для версии интерпретатора PHP.

Итак, проверим работает ли переключатель PHP в Hestia CP. После установки Hestia, я загрeзил файл phpinfo. PHPinfo показал, что у меня установлен PHP версии 7.4.15.

Теперь я хочу установить поддержку PHP например версии 7.3, которую требует например движок DataLife Engine (DLE) (на php 7.4 DLE не работает).

Перехожу в меню Server → Configure → Web server, пролистываю до раздела Enabled PHP versions и ставлю галочку напротив нужно мне версии PHP. Нажимаю кнопку Save. Разработчики предупреждают: "Сохранение изменений может занять несколько минут. Дождитесь завершения процесса и не обновляйте страницу."

Ждем какой-то время за чашкой чая. Страница обновляется. Переходим в настройки тестового сайта и в разделе "Backend Template PHP-FPM" выбираем нужную версию PHP.

Жмем кнопку Save. И обновляем страницу выводимую файлом phpinfo.

И таки да!!! Я вижу версию PHP Version 7.3.27-2+ubuntu20.04.1+deb.sury.org+1. Слава богу! Я действительно не просто потерял время на изучение этой панели и могу сказать панель HestiaCP пригодна к работе и является хорошим продуктом. Рекомендую к использованию на VDS/VPS Zomro.

Skyeng