HestiaCP — современная панель управления сервером: веб-сайты (Nginx/Apache + PHP-FPM), базы (MariaDB/PostgreSQL), почта (Exim/Dovecot), DNS (BIND), FTP (VSFTPD/ProFTPD), firewall (iptables+Fail2Ban), резервные копии и мульти-PHP. Отлично подходит как «универсальный» shared-хостинг на одном VPS.
Минимальные требования: 2 vCPU, 4 ГБ RAM, 40+ ГБ SSD, Debian 12 либо Ubuntu 22.04/24.04 LTS, белый IPv4 (и/или IPv6).
Подготовка сервера (Ubuntu/Debian)
# Время, обновления, базовые пакеты
sudo apt update && sudo apt -y upgrade
sudo apt install -y curl wget ca-certificates lsb-release
# Хостнейм и FQDN
sudo hostnamectl set-hostname panel.example.com
# UFW: откроем SSH и веб-порты (80/443) — панель добавим позже
sudo apt install -y ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp comment 'SSH'
sudo ufw allow 80,443/tcp comment 'Web'
sudo ufw --force enable
HestiaCP установка / hestiacp install (интерактивно)
# Вход под root
sudo -i
# Скачать официальный установщик
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh
# Запустить (интерактивный режим спросит компоненты)
bash hst-install.sh
По завершении панель будет доступна на https://203.0.113.10:8083/. Логин/пароль выводятся инсталлятором.
HestiaCP установка Ubuntu/Debian с флагами (подбор модулей)
Частый запрос — «hestiacp установка ubuntu» с готовым набором сервисов. Ниже типичный прод-набор модулей (hestiacp модули), включая ProFTPD и Multi-PHP:
bash hst-install.sh \
--interactive no \
--hostname panel.example.com \
--email [email protected] \
--password StrongPanelPass_123 \
--apache no \
--phpfpm yes \
--multiphp '8.2,8.3' \
--nginx yes \
--proftpd yes \
--vsftpd no \
--named yes \
--mysql yes \
--postgresql no \
--exim yes \
--dovecot yes \
--clamav yes \
--spamassassin yes \
--iptables yes \
--fail2ban yes \
--quota no \
--force
После установки откройте порт панели:
sudo ufw allow 8083/tcp comment 'HestiaCP'
Первичный вход и SSL для панели
1.Откройте https://panel.example.com:8083/ (рекомендуется сразу использовать FQDN).
2.Выпустите Let’s Encrypt для панели (сертификат повесится на 8083):
# Убедитесь, что DNS A panel.example.com указывает на 203.0.113.10
v-add-letsencrypt-host
# Перезапуск панели выполнится автоматически
Создание клиента и сайта (быстрый старт)
В GUI: Users → Add User (например, user1), затем: Web → Add Domain → site.example.com → включите SSL и Let’s Encrypt.
Для PHP: Web → Edit Domain → Backend Template выберите нужную версию PHP-FPM 8.2 или 8.3.
SSH-ключи (ключи) в HestiaCP
Вариант через GUI: Account → Manage SSH keys.
CLI (от root) — добавить ключ пользователю:
v-add-user-ssh-key user1 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJJk0TypgqzDkz2P/0cCkHHLy9+hy3m1z1rKj9a0Zq0 user@laptop'
Выдача shell:
# Разрешить bash-доступ (вместо nologin)
v-change-user-shell user1 bash
ProFTPD (hestiacp proftpd install) и FTPS
Если вы ставили --proftpd yes, FTP уже активен. Для FTPS и пассивного режима укажите внешний IP и порты:
sudo sed -i 's|# DefaultAddress .*|DefaultAddress 203.0.113.10|' /etc/proftpd/proftpd.conf
sudo sed -i 's|# MasqueradeAddress .*|MasqueradeAddress 203.0.113.10|' /etc/proftpd/proftpd.conf
# Пассивные порты (пример безопасного диапазона)
echo -e "\nPassivePorts 49152 65534" | sudo tee -a /etc/proftpd/proftpd.conf
# Включить TLS, если модуль уже установлен
sudo bash -c 'cat >/etc/proftpd/tls.conf <<EOF
<IfModule mod_tls.c>
TLSEngine on
TLSProtocol TLSv1.2 TLSv1.3
TLSRSACertificateFile /usr/local/hestia/ssl/certificate.crt
TLSRSACertificateKeyFile /usr/local/hestia/ssl/certificate.key
TLSOptions NoCertRequest
TLSRequired on
</IfModule>
EOF'
# Фаервол для 21/TCP и пассивного диапазона
sudo ufw allow 21/tcp
sudo ufw allow 49152:65534/tcp
sudo systemctl restart proftpd
На серверах за NAT обязательно укажите MasqueradeAddress во внешний адрес.
Multi-PHP, Composer и шаблоны
Установка дополнительных PHP-модулей:
sudo apt install -y php8.2-{cli,fpm,mysql,xml,zip,gd,curl,mbstring,intl,bcmath,imagick}
sudo apt install -y php8.3-{cli,fpm,mysql,xml,zip,gd,curl,mbstring,intl,bcmath,imagick}
Composer:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
composer --version
Шаблоны веб-приложений выбираются в Web → Edit Domain (Backend/Proxy templates). HestiaCP уже содержит набор под CMS и фреймворки.
Почта: базовый чек-лист
- В DNS у домена настраиваем MX, SPF, DKIM, DMARC.
- В HestiaCP включаем DKIM в настройках домена.
- Для почты откройте порты 25, 465, 587/TCP, 993/995 при необходимости.
Бэкапы и обновления
Резервные копии:
# Бэкап отдельного пользователя
v-backup-user user1
# Бэкап всех пользователей (по cron — ежедневно)
v-backup-users
Обновление панели и шаблонов:
# Проверка и установка апдейтов Hestia
v-update-sys-hestia all
# Обновить системные пакеты
apt update && apt -y full-upgrade
Диагностика (коротко)
# Службы
systemctl status hestia nginx apache2 php8.2-fpm php8.3-fpm exim4 dovecot proftpd --no-pager
# Логи панели
journalctl -u hestia -e --no-pager
# Проверка портов
ss -ltnp | grep -E ':8083|:21|:80|:443'
Частые проблемы и решения
- Панель не открывается — откройте 8083/TCP в UFW; проверьте, что сертификат для panel.example.com выпущен v-add-letsencrypt-host.
- FTP не коннектится снаружи — проверьте MasqueradeAddress, пассивные порты и правила UFW/периметра.
- Let’s Encrypt не выдаёт сертификат домену сайта — DNS A/AAAA должен указывать на сервер, 80/TCP открыт, никаких редиректов на другой хост до валидации.
HestiaCP на Ubuntu
Фраза «hestiacp ubuntu» чаще всего означает установку на Ubuntu LTS (22.04/24.04). Сценарии идентичны Debian: тот же установщик, те же флаги. На не-LTS релизы ставить не рекомендуется.
Шпаргалка команд
# Подготовка
sudo apt update && sudo apt -y upgrade
sudo apt install -y curl wget ca-certificates ufw
sudo hostnamectl set-hostname panel.example.com
sudo ufw allow 22/tcp && sudo ufw allow 80,443/tcp && sudo ufw --force enable
# Установка HestiaCP (тихий режим, nginx+php-fpm, multiphp, proftpd)
sudo -i
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh
bash hst-install.sh --interactive no --hostname panel.example.com --email [email protected] \
--password StrongPanelPass_123 --apache no --phpfpm yes --multiphp '8.2,8.3' --nginx yes \
--proftpd yes --vsftpd no --named yes --mysql yes --exim yes --dovecot yes --iptables yes --fail2ban yes --force
ufw allow 8083/tcp
# SSL для панели
v-add-letsencrypt-host
# SSH-ключ пользователю
v-add-user-ssh-key user1 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJJk0TypgqzDkz2P/0cCkHHLy9+hy3m1z1rKj9a0Zq0 user@laptop'
# ProFTPD: пассивные порты и NAT
echo -e "\nPassivePorts 49152 65534" | tee -a /etc/proftpd/proftpd.conf
sed -i 's|# MasqueradeAddress .*|MasqueradeAddress 203.0.113.10|' /etc/proftpd/proftpd.conf
ufw allow 21/tcp && ufw allow 49152:65534/tcp
systemctl restart proftpd
Если нужна hestiacp установка «под ключ» на Debian/Ubuntu, быстрый старт прод-среды (SSL для панели и сайтов, ProFTPD, мульти-PHP, бэкапы, антиспам), миграция сайтов и почты без простоя — HSTQ всё настроит и сопроводит, включая мониторинг и регулярные обновления.