Веб-панели управления Linux-сервером: Cockpit, Webmin, HestiaCP и другие
Панели администрирования и хостинг-панели: возможности, порты, лицензии, алгоритм выбора и защита после установки.

Коротко: веб-панели для Linux делятся на два класса. Панели администрирования (Cockpit, Webmin) управляют самой системой: службами, дисками, сетью, пользователями. Хостинг-панели (HestiaCP, FASTPANEL, ISPmanager, CloudPanel) разворачивают стек для сайтов: веб-сервер, PHP, базы, почту, DNS. Для одного сервера без сайтов хватит Cockpit, для хостинга нескольких сайтов — HestiaCP или FASTPANEL. Порт любой панели не должен быть открыт всему интернету.
Вопрос «какую панель поставить» обычно возникает в двух ситуациях. Либо сервер передают человеку, которому неудобно жить в терминале: разработчику, менеджеру, заказчику. Либо администратор устал руками заводить виртуальные хосты, сертификаты и почтовые ящики для десятка сайтов. Это разные задачи, и панель, хорошая для одной, во второй будет мешать.
Заодно панели — наглядный пример того, как интерфейс решает судьбу инструмента. Функционально Webmin умеет больше, чем Cockpit, но новичкам чаще советуют Cockpit: у него продуманная навигация и единая дизайн-система PatternFly, а у Webmin — сотни модулей со своей логикой экранов. Если вы делаете собственную панель — кабинет для клиентов хостинга или внутренний пульт поддержки, — сценарии и экраны лучше сразу проектировать как продукт, а не «как получится у бэкендера»; для этого есть команды, которые проектируют интерфейсы админ-панелей. Ниже — разбор готовых решений, чтобы понять, нужна ли своя панель вообще.
Что такое веб-панель управления сервером и чем она не является?
Веб-панель — это служба на сервере, которая слушает отдельный порт и через браузер выполняет те же действия, что вы делали бы в терминале: systemctl, правку конфигов, useradd, установку пакетов. Никакой магии в ней нет: панель работает с теми же файлами и демонами, просто с формой вместо командной строки.
Отсюда три следствия, которые стоит держать в голове:
- Панель работает с правами root. Уязвимость в ней равна компрометации всего сервера. Это главный аргумент за осторожность, а не против панелей как таковых.
- Хостинг-панель считает конфигурацию своей. HestiaCP или ISPmanager генерируют конфиги nginx, PHP-FPM и почты из шаблонов. Ручная правка файла может быть перезаписана при следующем изменении через интерфейс.
- Панель не заменяет понимания системы. Когда сайт падает, ошибку всё равно ищут в
journalctlи логах веб-сервера. Основы стоит знать — хотя бы на уровне systemd на практике.
Чем панель администрирования отличается от хостинг-панели?
Это главный критерий выбора, и большинство ошибок происходит именно здесь: человек ставит хостинг-панель на сервер, где крутится одно приложение в Docker, или пытается развернуть сайты через Cockpit, который этого не умеет.
| Критерий | Панель администрирования | Хостинг-панель |
|---|---|---|
| Примеры | Cockpit, Webmin | HestiaCP, FASTPANEL, ISPmanager, CloudPanel, Virtualmin |
| Что управляет | Система: службы, диски, сеть, пользователи, обновления | Сайты: домены, вебсервер, PHP, базы, почта, DNS, SSL |
| Установка | На любой сервер, в том числе рабочий | Только на чистую систему |
| Ручные правки конфигов | Совместимы | Могут быть перезаписаны шаблонами |
| Удаление | Пакетным менеджером, без последствий | Фактически только переустановкой системы |
Практическое правило: если на сервере будут жить сайты клиентов с почтой и доменами — нужна хостинг-панель. Если там приложение, база, контейнеры или виртуальные машины — панель администрирования или вообще никакой.
Cockpit: системная панель для одного или нескольких серверов
Cockpit развивает Red Hat, в RHEL, Fedora Server, Rocky и AlmaLinux он есть в стандартных репозиториях, а в Debian и Ubuntu ставится одной командой:
# Debian / Ubuntu
sudo apt install cockpit
# RHEL / Rocky / Alma / Fedora
sudo dnf install cockpit
sudo systemctl enable --now cockpit.socket
Панель открывается на порту 9090, вход — обычной учётной записью системы с правами sudo. Важная деталь архитектуры: Cockpit запускается через активацию сокетом systemd. Пока к нему никто не подключился, процесс не висит в памяти, а после выхода завершается. Своей базы пользователей и своих конфигов у него нет — он вызывает системные API, поэтому то, что вы сделали в терминале, сразу видно в интерфейсе, и наоборот.
Что умеет: графики нагрузки, журнал systemd с фильтрами, управление службами и таймерами, разметка дисков и LVM, сетевые интерфейсы и bonding, файрвол (firewalld), учётные записи и SSH-ключи, обновления, встроенный терминал. Через дополнительные пакеты — виртуальные машины (cockpit-machines), контейнеры Podman (cockpit-podman), файловый менеджер. Соседние серверы добавляются по SSH, и ими можно управлять из одного окна.
Чего не умеет: сайтов, доменов, почты, DNS-зон, баз данных. Это не хостинг-панель и не пытается ей быть. Подробности и список модулей — в официальном руководстве Cockpit.
Первые 15 минут с Cockpit: пошагово
Чтобы панель приносила пользу, а не просто висела на порту, после установки стоит пройти короткий маршрут.
- Закройте порт до первого входа. Если сервер в интернете, сначала откройте Cockpit через туннель (
ssh -L 9090:localhost:9090 admin@server) и только потом решайте, нужен ли доступ снаружи. Подробнее — в разделе о защите ниже. - Войдите обычным пользователем с sudo, а не root. В Debian и Ubuntu вход под root в Cockpit по умолчанию запрещён файлом
/etc/cockpit/disallowed-users— и это правильно. Административные действия включаются переключателем «Административный доступ» в шапке. - Откройте «Журналы» и отфильтруйте по приоритету «Ошибка». Часто именно тут обнаруживаются падающие службы и забытые таймеры, о которых никто не знал.
- Проверьте «Службы». Вкладка показывает все юниты, таймеры и сокеты systemd с состоянием. Неактивные, но включённые в автозагрузку службы — повод разобраться, нужны ли они.
- Посмотрите «Хранилище». Заполненность разделов, SMART-статус дисков, RAID и LVM. Здесь удобно расширить логический том, не вспоминая порядок команд
lvextendиresize2fs. - Включите автоматические обновления безопасности на вкладке «Обновления программного обеспечения». Cockpit настроит
dnf-automaticилиunattended-upgradesв зависимости от дистрибутива. - Добавьте остальные серверы. В меню выбора хоста укажите адрес соседней машины: Cockpit подключится к ней по SSH, ставить на неё панель и открывать порт 9090 не нужно — достаточно пакета
cockpit-bridge.
После этого Cockpit работает как лёгкая консоль наблюдения: метрики и журналы в одном окне, а изменения вы по-прежнему вносите осознанно. Для долгосрочных графиков и алертов он не предназначен — история метрик хранится недолго, для этого нужен отдельный мониторинг.
Webmin: швейцарский нож с сотнями модулей
Webmin существует с конца 1990-х и написан на Perl. В отличие от Cockpit, это постоянно работающий демон (собственный веб-сервер miniserv.pl) на порту 10000. Ставится из официального репозитория проекта по инструкции на webmin.com.
Сильная сторона Webmin — модули для правки конфигураций конкретных демонов: BIND, Postfix, Dovecot, Samba, Squid, Apache, MySQL, cron, квоты. Для старого сервера, где всё это уже настроено руками, это удобнее любой хостинг-панели: Webmin не навязывает шаблоны, а редактирует существующие файлы.
Слабые стороны — перегруженный интерфейс и история безопасности. В 2019 году выяснилось, что в официальные сборки 1.890–1.920 через скомпрометированную инфраструктуру сборки попал бэкдор, дававший удалённое выполнение команд без пароля (CVE-2019-15107). Его давно закрыли, но вывод универсален: панель с правами root на открытом порту — первая цель сканеров.
На базе Webmin сделан Virtualmin — полноценная хостинг-панель с доменами, почтой и базами. Если нужен хостинг, а не администрирование, смотрите сразу его, а не голый Webmin.
HestiaCP, FASTPANEL, ISPmanager и CloudPanel: какую хостинг-панель взять?
Все четыре ставятся на чистую систему установочным скриптом и разворачивают стек для сайтов. Различаются лицензией, набором функций и тем, под кого сделан интерфейс.
HestiaCP
Бесплатная панель под GPL, форк VestaCP, который сообщество начало после того, как развитие Vesta застопорилось (а в 2018 году её установщик был скомпрометирован и раздавал троян). Поддерживает Debian и Ubuntu, порт по умолчанию 8083. Внутри: nginx (отдельно или перед Apache), несколько версий PHP-FPM, MariaDB/MySQL и PostgreSQL, почта на Exim и Dovecot с антиспамом, DNS на BIND, Let's Encrypt, бэкапы пользователей. Хороший выбор для своего VPS с несколькими сайтами и почтой. Документация — на hestiacp.com.
FASTPANEL
Бесплатная панель российской разработки, работает на Debian, Ubuntu, AlmaLinux и Rocky. Интерфейс заметно дружелюбнее остальных, есть русская локализация из коробки, несколько версий PHP, базы, сертификаты, бэкапы, файловый менеджер. Порт по умолчанию — 8888. Подойдёт, если панелью будет пользоваться не администратор, а владелец сайтов. Почтовая часть скромнее, чем у HestiaCP.
ISPmanager
Коммерческая панель ISPsystem, стандарт де-факто у российских хостеров — многие продают VPS с ней в комплекте. Порт 1500. Плюсы: зрелость, многопользовательский режим с правами для реселлеров, интеграции с биллингом, наличие в реестре российского ПО (важно для госзаказчиков). Минус — платная лицензия, которая для одного личного сервера редко оправдана.
CloudPanel
Бесплатная панель для Debian и Ubuntu, заточенная под приложения, а не под классический хостинг: PHP-проекты, Node.js, Python, статические сайты, reverse proxy. Порт 8443. Почты и DNS нет — и это скорее плюс, если вы держите почту у внешнего провайдера. Нравится разработчикам за минимализм.
Отдельно об aaPanel: это международная версия китайской BT Panel. Функций много, но часть кода закрыта, а в китайской версии в 2022 году находили массово эксплуатируемую уязвимость. Для серверов с данными клиентов мы бы её не рекомендовали.
Сравнительная таблица панелей
| Панель | Тип | Цена | Порт | Почта/DNS | Кому |
|---|---|---|---|---|---|
| Cockpit | Администрирование | Бесплатно | 9090 | Нет | Серверы приложений, ВМ, контейнеры |
| Webmin | Администрирование | Бесплатно | 10000 | Правка конфигов | Старые серверы с ручной настройкой |
| HestiaCP | Хостинг | Бесплатно | 8083 | Да | VPS с сайтами и почтой |
| FASTPANEL | Хостинг | Бесплатно | 8888 | Частично | Владельцы сайтов без опыта админа |
| ISPmanager | Хостинг | Платно | 1500 | Да | Хостеры, реселлеры, компании |
| CloudPanel | Хостинг приложений | Бесплатно | 8443 | Нет | Разработчики PHP/Node/Python |
Порты указаны по умолчанию на момент написания; после установки сверяйтесь с выводом установщика.
Как выбрать панель: пошаговый алгоритм
- Определите, что будет жить на сервере. Одно приложение, база или контейнеры — панель администрирования. Сайты клиентов с доменами и почтой — хостинг-панель.
- Решите, кто будет нажимать кнопки. Администратору подойдёт и Webmin. Владельцу сайтов, который боится терминала, — FASTPANEL или HestiaCP с понятным интерфейсом.
- Нужна ли почта на этом сервере? Если нет — CloudPanel или FASTPANEL, меньше движущихся частей. Если да — HestiaCP, ISPmanager или Virtualmin.
- Проверьте совместимость с дистрибутивом. Хостинг-панели поддерживают ограниченный список версий; на свежем релизе дистрибутива установщик может отказаться работать.
- Сервер чистый? Хостинг-панель ставится только на свежую систему. Если на сервере уже что-то настроено — поднимите новый, перенесите сайты и не пытайтесь «доставить» панель поверх.
- Одна панель на сервер. Две панели, управляющие одним nginx или одной почтой, перезаписывают конфиги друг друга. Исключение — Cockpit рядом с хостинг-панелью только для мониторинга, без правки служб.
Как защитить панель после установки?
Самая частая ошибка — оставить порт панели открытым всему интернету. Боты сканируют порты 8083, 8888, 9090 и 10000 постоянно, и любой свежий эксплойт для панели применяется массово в первые же дни. Минимальный набор мер:
- Закройте порт файрволом и разрешите доступ только со своих адресов или из VPN. Пример для ufw:
sudo ufw allow from 203.0.113.10 to any port 9090 proto tcp. - Или ходите через SSH-туннель — тогда порт вообще не нужен снаружи:
ssh -L 9090:localhost:9090 admin@server, затем открытьhttps://localhost:9090в браузере. Вход по ключам вместо паролей разобран в статье о SSH-ключах. - Включите двухфакторную аутентификацию, если панель её поддерживает (Webmin, HestiaCP, ISPmanager — поддерживают).
- Поставьте нормальный сертификат вместо самоподписанного, чтобы не приучать себя кликать «всё равно продолжить».
- Обновляйте панель так же регулярно, как систему, и подпишитесь на её анонсы безопасности.
- Добавьте fail2ban на логи входа в панель и мониторинг доступности — см. базовую защиту Linux-сервера и мониторинг на Prometheus и Grafana.
Когда панель не нужна вовсе?
Если инфраструктура описана кодом — Ansible, Terraform, Docker Compose, Kubernetes — панель становится источником расхождений: кто-то поменял настройку кнопкой, и следующий прогон плейбука её откатит или, хуже, не откатит, и сервер начнёт отличаться от описания. Для таких проектов лучше вложиться в автоматизацию и наблюдаемость, а для разовых действий оставить Cockpit в режиме «посмотреть». Про подход «инфраструктура как код» на практике — в статье про первые playbook в Ansible.
И наоборот: собственная панель имеет смысл, когда вы продаёте сервис и вашим клиентам нужен кабинет с понятными им действиями — «добавить домен», «восстановить бэкап», «посмотреть счёт». Готовые хостинг-панели решают это для типового хостинга, но не для нестандартного продукта.
Чеклист перед тем, как поставить панель
- Понятно, какой класс панели нужен: администрирование или хостинг.
- Дистрибутив и его версия есть в списке поддерживаемых.
- Для хостинг-панели сервер чистый, есть снимок или бэкап до установки.
- Порт панели закрыт снаружи, доступ — по белому списку, VPN или SSH-туннелю.
- Включены 2FA и нормальный сертификат.
- Обновления панели — в регламенте вместе с обновлениями системы.
- На сервере одна панель, управляющая службами.
Частые вопросы
Какая панель управления Linux-сервером самая лёгкая?
Cockpit: он не держит постоянного процесса и запускается только при подключении через сокет systemd. Из хостинг-панелей по ресурсам скромнее всех CloudPanel и HestiaCP без почтового стека. Для VPS с 1 ГБ памяти хостинг-панель с почтой и антиспамом будет тяжеловата.
Можно ли поставить Cockpit и HestiaCP на один сервер?
Можно, если использовать Cockpit только для мониторинга, журналов и обновлений. Менять через него службы, которыми управляет HestiaCP (nginx, PHP-FPM, почту), не стоит: хостинг-панель перезапишет конфигурацию из своих шаблонов.
Безопасно ли пользоваться веб-панелью на продакшене?
Да, если порт панели не открыт в интернет, включена двухфакторная аутентификация и панель регулярно обновляется. Опасна не сама панель, а открытый порт со службой, работающей от root. Через SSH-туннель или VPN риск минимален.
Чем заменить cPanel на своём VPS бесплатно?
Ближе всего по функциям HestiaCP и Virtualmin: домены, почта, DNS, базы, сертификаты, бэкапы. Если почта не нужна — FASTPANEL или CloudPanel. Миграцию с cPanel проще делать на новый чистый сервер, перенося сайты по одному.
Как удалить хостинг-панель с сервера?
Корректного удаления у большинства хостинг-панелей нет: они меняют конфигурацию десятков пакетов. Надёжный путь — поднять новый сервер, перенести сайты и базы, переключить DNS и выключить старый. Cockpit и Webmin удаляются обычным пакетным менеджером.
Нужна ли панель, если я умею работать в терминале?
Для одного-двух серверов — не обязательно. Но Cockpit полезен даже опытному администратору: графики нагрузки, журнал с фильтрами и разметка дисков в браузере экономят время, а сам он почти не потребляет ресурсов.