Главная » Панели управления » Froxlor: установка бесплатной панели хостинга на Debian и Ubuntu

Froxlor: установка бесплатной панели хостинга на Debian и Ubuntu

Froxlor — бесплатная панель управления сервером хостинга с открытым кодом (GPL). Через неё заводят клиентов, сайты, почтовые ящики, FTP-аккаунты, базы MariaDB и DNS-зоны, а сама панель генерирует конфиги для Apache или Nginx, PHP-FPM, Postfix, Dovecot и других служб. Проект появился как продолжение SysCP: когда разработка SysCP остановилась, сообщество сделало форк и назвало его Froxlor.

Коротко: Froxlor ставится из официального репозитория deb.froxlor.org на Debian 11–13 или Ubuntu 22.04/24.04, затем настраивается через веб-установщик по адресу http://IP-сервера/froxlor, а службы сервера настраивает консольная команда froxlor-cli froxlor:config-services. Ниже — требования, установка по шагам, первые действия в панели, обновление и защита. Инструкция сверена с документацией ветки 2.x на docs.froxlor.org.

SysCP и Froxlor: что произошло

Когда-то на этом сайте был обзор SysCP — лёгкой панели для Debian, которая умела сайты, почту, FTP и DNS. Разработка SysCP прекратилась в 2009–2010 годах, и ставить её сейчас нельзя: она не знает ни PHP 8, ни современного OpenSSL, ни Let’s Encrypt. Froxlor вырос из её кода и сохранил идеологию: панель не ставит за вас «комбайн» из десятка служб, а аккуратно управляет теми, которые вы выбрали, и не мешает править систему руками.

Если вы выбираете панель с нуля, посмотрите также сравнение бесплатных панелей управления сервером: там HestiaCP, ISPConfig, CloudPanel, Virtualmin и другие.

Что умеет Froxlor и кому подходит

  • клиенты с лимитами ресурсов и администраторы-реселлеры, которые заводят своих клиентов;
  • домены, поддомены, алиасы и перенаправления, сайты на Apache 2.4 или Nginx;
  • PHP-FPM с отдельным пользователем для каждого клиента и несколько версий PHP;
  • сертификаты Let’s Encrypt для сайтов и для самой панели;
  • почтовые ящики, алиасы и пересылки на Postfix и Dovecot;
  • FTP-аккаунты (ProFTPD или Pure-FTPd) и базы MariaDB/MySQL;
  • DNS-зоны на BIND или PowerDNS;
  • статистика трафика, двухфакторная аутентификация, API и консольные команды.

Froxlor рассчитан на один сервер: веб, почта и DNS живут на той же машине, что и панель. Если нужно разнести службы по нескольким серверам и управлять ими из одного места, смотрите ISPConfig 3. А если нужна самая простая панель для своих сайтов, обычно проще HestiaCP. Froxlor хорош там, где хочется лёгкую открытую панель для небольшого хостинга с клиентами и полный контроль над конфигурацией служб.

Требования

  • Чистый сервер с Debian 13, 12 или 11 либо Ubuntu 24.04 или 22.04. Разработчики называют Debian основной и лучше всего поддерживаемой системой.
  • От 1 ГБ RAM для сайтов без антивируса, 2–4 ГБ, если на сервере будет почта со спам-фильтром и ClamAV.
  • Полное имя сервера (FQDN), например srv1.example.ru, и A-запись для него в DNS — без этого не получится выпустить сертификат для панели и нормально отправлять почту.
  • Доступ root по SSH.

Установка Froxlor на Debian и Ubuntu

1. Имя сервера

Задайте имя сервера и проверьте, что оно разрешается:

hostnamectl set-hostname srv1.example.ru
hostname -f

Если hostname -f выводит короткое имя, добавьте в /etc/hosts строку с IP-адресом сервера, полным и коротким именем.

2. Веб-сервер и база данных

Поставьте веб-сервер и MariaDB. Для большинства сайтов с .htaccess удобнее Apache, для чистого PHP-FPM — Nginx:

apt update
apt install apache2 mariadb-server

3. Репозиторий Froxlor и пакет

Команды из официальной документации. Для Debian:

apt -y install apt-transport-https lsb-release ca-certificates curl gnupg
curl -sSLo /usr/share/keyrings/deb.froxlor.org-froxlor.gpg https://deb.froxlor.org/froxlor.gpg
sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.froxlor.org-froxlor.gpg] https://deb.froxlor.org/debian $(lsb_release -sc) main" > /etc/apt/sources.list.d/froxlor.list'
apt update && apt upgrade
apt install froxlor

Для Ubuntu всё то же самое, только в адресе репозитория debian меняется на ubuntu: https://deb.froxlor.org/ubuntu. Пакет кладёт панель в /var/www/html/froxlor; если сомневаетесь, проверьте командой dpkg -L froxlor | head.

4. Привилегированный пользователь базы

Установщику нужен пользователь MariaDB с правом создавать базы и пользователей: через него Froxlor будет заводить базы клиентов. Войдите в консоль mariadb и выполните, подставив свой пароль:

CREATE USER 'froxroot'@'localhost' IDENTIFIED BY 'НадёжныйПароль';
GRANT ALL PRIVILEGES ON *.* TO 'froxroot'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

Документация советует не использовать в этих учётных данных спецсимволы — установщик может их неправильно обработать. Длинный пароль из букв и цифр надёжен и без них.

5. Веб-установщик

Откройте в браузере http://IP-сервера/froxlor. Установщик проверит PHP и его модули, а затем спросит:

  • данные привилегированного пользователя базы (froxroot и его пароль);
  • имя и пароль непривилегированного пользователя — его Froxlor создаст сам для своей собственной базы;
  • логин и пароль администратора панели;
  • настройки сервера: полное имя, IP-адрес, веб-сервер (Apache или Nginx) и дистрибутив.

Пока панель открыта по HTTP, проходите установщик быстро и не оставляйте его незавершённым: до создания администратора страницу может открыть любой, кто знает IP сервера.

6. Настройка служб

Сама панель только хранит настройки и генерирует конфиги. Подготовить службы сервера — веб-сервер, PHP-FPM, почту, FTP, cron — нужно один раз командой от root:

/var/www/html/froxlor/bin/froxlor-cli froxlor:config-services --create

Команда спросит дистрибутив, веб-сервер, почтовые службы, FTP-сервер и системные службы и сохранит выбор в JSON-файл. Затем примените его:

/var/www/html/froxlor/bin/froxlor-cli froxlor:config-services --apply=/путь/к/файлу.json

Точный путь к файлу команда выведет сама. Этот же JSON пригодится, если сервер придётся переустановить: применить его можно повторно.

7. Задания cron

Froxlor не меняет конфиги служб в момент нажатия кнопки. Изменения из панели — новый сайт, ящик, сертификат — попадают в очередь, и её разбирает команда froxlor-cli froxlor:cron, которую запускает cron. Конфигуратор служб создаёт это задание; проверьте, что оно есть:

cat /etc/cron.d/froxlor

Если новый сайт не появился через несколько минут, запустите /var/www/html/froxlor/bin/froxlor-cli froxlor:cron вручную и посмотрите вывод — ошибки конфигурации видны сразу.

Первые шаги в панели

  1. Войдите администратором по адресу http://IP-сервера/froxlor.
  2. В настройках включите Let’s Encrypt и выпустите сертификат для имени сервера, после этого открывайте панель только по HTTPS.
  3. Включите двухфакторную аутентификацию для администратора.
  4. Проверьте IP-адреса и порты сервера в разделе ресурсов — к ним Froxlor привязывает сайты.
  5. Создайте клиента с лимитами: сколько доменов, ящиков, баз и места на диске ему положено.
  6. Под клиентом добавьте домен, включите для него Let’s Encrypt и создайте почтовые ящики и FTP-аккаунт.

Если сервер будет отправлять почту, сразу настройте DNS-записи для домена — без них письма уйдут в спам. Как это сделать, разобрано в статье SPF, DKIM и DMARC: настройка для своего домена, а общие вопросы своей почты — в обзоре собственного почтового сервера.

Обновление

Froxlor из репозитория обновляется вместе с системой: apt update && apt upgrade. После обновления пакета панель может попросить обновить свою базу данных — это делается при входе администратора в веб-интерфейсе или из консоли командой froxlor-cli froxlor:update. Перед обновлением сделайте копию базы Froxlor и каталога /var/www/html/froxlor.

Безопасность панели

  • Закройте доступ к панели всем, кроме своих IP, или пускайте к ней через VPN или SSH-туннель.
  • Включите двухфакторную аутентификацию для всех администраторов и реселлеров.
  • Поставьте fail2ban для SSH, почты и FTP и включите автоматические обновления безопасности ОС.
  • Не меняйте права каталогов сайтов на 777: Froxlor запускает PHP-FPM каждого клиента от своего пользователя, проблемы с правами решаются владельцем файлов.
  • Храните бэкапы вне сервера — копия на том же диске не спасёт ни от взлома, ни от отказа диска.

Типичные проблемы

СимптомПричинаРешение
По адресу /froxlor ошибка 404Веб-сервер не отдаёт каталог панели или установлен другой корень сайтаПроверить, что панель лежит в /var/www/html/froxlor, а сайт по умолчанию смотрит в /var/www/html
Установщик ругается на модули PHPНе хватает расширений PHPПоставить недостающие пакеты php-*, которые назовёт установщик, и обновить страницу
Новый сайт или ящик не появляетсяНе работает задание cron FroxlorПроверить /etc/cron.d/froxlor, запустить froxlor-cli froxlor:cron вручную
Let’s Encrypt не выдаёт сертификатДомен не указывает на сервер или закрыт порт 80Проверить A-запись и открыть 80/tcp
Письма уходят в спамНет PTR, SPF, DKIM, DMARCНастроить DNS-записи, PTR — через хостера; как найти причину
После переезда сервера сайты не открываютсяВ панели остался старый IPСменить IP командой froxlor-cli froxlor:switch-server-ip

Частые вопросы

Froxlor и SysCP — это одно и то же?

Froxlor вырос из кода SysCP, но это отдельный и живой проект. SysCP заброшен больше пятнадцати лет назад, его нельзя ставить на современные системы. Старый сервер с SysCP надёжнее заменить новым с Froxlor или другой живой панелью и перенести сайты, базы и почту.

Froxlor бесплатна?

Да, это открытое программное обеспечение под лицензией GPL. Её можно бесплатно использовать в том числе для хостинга клиентов.

Можно ли поставить Froxlor на AlmaLinux или Rocky Linux?

Официальный репозиторий и документация рассчитаны на Debian и Ubuntu, Debian разработчики рекомендуют в первую очередь. Для RHEL-систем из бесплатных панелей с автоматической установкой лучше подходит Virtualmin — о нём в сравнении панелей.

Можно ли поставить Froxlor без веб-установщика?

Да, у консольной утилиты есть команда froxlor-cli froxlor:install — она проводит ту же установку без браузера. Это удобно для автоматизации и когда панель не хочется даже на время открывать по HTTP.

Какой сервер взять под Froxlor?

Для нескольких сайтов с почтой хватает VPS с 2 vCPU и 4 ГБ RAM на SSD. Если клиентов и сайтов много, смотрите на диски и память — подробно в статье как выбрать выделенный сервер для хостинга сайтов.