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 upgradesudo 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 ufwsudo ufw default deny incomingsudo ufw default allow outgoingsudo ufw allow 22/tcp comment 'SSH'sudo ufw allow 80,443/tcp comment 'Web'sudo ufw --force enableHestiaCP установка / 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.confsudo 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/tcpsudo ufw allow 49152:65534/tcpsudo 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=composercomposer --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 upgradesudo apt install -y curl wget ca-certificates ufwsudo hostnamectl set-hostname panel.example.comsudo ufw allow 22/tcp && sudo ufw allow 80,443/tcp && sudo ufw --force enable# Установка HestiaCP (тихий режим, nginx+php-fpm, multiphp, proftpd)
sudo -iwget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.shbash 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 --forceufw 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.confsed -i 's|# MasqueradeAddress .*|MasqueradeAddress 203.0.113.10|' /etc/proftpd/proftpd.confufw allow 21/tcp && ufw allow 49152:65534/tcpsystemctl restart proftpdЕсли нужна hestiacp установка «под ключ» на Debian/Ubuntu, быстрый старт прод-среды (SSL для панели и сайтов, ProFTPD, мульти-PHP, бэкапы, антиспам), миграция сайтов и почты без простоя — HSTQ всё настроит и сопроводит, включая мониторинг и регулярные обновления.