aaPanel — бесплатная веб-панель, которая в несколько кликов устанавливает и обслуживает Nginx, MySQL/MariaDB, PHP, FTP и SSL-сертификаты. На VPS Linux Infrawire она даёт готовый веб-стек LNMP без ручной правки конфигурационных файлов. В руководстве используется Ubuntu 24.04 или Debian 12.
📋 Требования
- Чистый KVM VPS с Ubuntu 24.04 или Debian 12 без установленного веб-сервера и других панелей.
- SSH-доступ под root и не менее 1 ГБ ОЗУ (для MySQL и PHP комфортнее 2 ГБ). IP-адрес и пароль root от VPS вы найдёте в личном кабинете.
- Домен с A-записью, указывающей на
VPS_IP, если вы хотите разместить настоящий сайт.
🔄 1. Обновление системы
Подключитесь как root и обновите пакеты, прежде чем что-либо устанавливать.
Bashssh root@VPS_IP apt update && apt -y upgrade && apt -y install curl
⬇️ 2. Запуск официального установщика
В имени установочного скрипта есть номер версии, который со временем меняется. Всегда копируйте актуальную команду с официального сайта aaPanel (https://www.aapanel.com), а не из старой инструкции. На момент написания она выглядит так:
Bashcurl -ksSO https://www.aapanel.com/script/install_7.0_en.sh bash install_7.0_en.sh aapanel
Скрипт спрашивает, можно ли установить aaPanel в каталог /www: ответьте y. Установка занимает несколько минут. Для осторожности прочитайте скрипт перед запуском: это обычный shell-файл.
В конце установщик выводит адрес панели, имя пользователя и пароль. Сразу скопируйте их, так как пароль случайный.
🔑 3. Как узнать адрес и учётные данные позже
Если вы закрыли терминал, данные для входа всегда можно получить командой bt:
Bashbt default
Адрес выглядит как http://VPS_IP:PORT/SECURITY_PATH. Порт случайный, а путь после него — это защитный вход: нужны оба, чтобы увидеть форму авторизации. Запуск bt без аргументов открывает интерактивное меню, где можно также сбросить пароль, изменить имя пользователя или порт.
🧱 4. Установка стека LNMP
После первого входа aaPanel предлагает набор рекомендуемого ПО. Выберите LNMP (Linux, Nginx, MySQL, PHP) и способ установки Fast, затем версию PHP, нужную вашему приложению. На том же экране можно установить и phpMyAdmin. Установка продолжается в фоне, ход выполнения виден в списке задач.
После завершения откройте Website > Add site, введите example.com, при необходимости создайте базу данных и подтвердите. Положите файлы в корень сайта, указанный в панели, обычно это /www/wwwroot/example.com. Чтобы получить HTTPS, откройте настройки сайта, раздел SSL, выберите Let's Encrypt и запросите сертификат, когда DNS-запись уже указывает на VPS.
🔓 5. Открытие нужных портов
Откройте порты 80 и 443 для сайтов, 22 для SSH и случайный порт панели. В панели используйте Security > Firewall, чтобы добавить правило для каждого порта. Если вы применяете UFW в Ubuntu, то же самое делается так:
Bashufw allow 22/tcp ufw allow 80/tcp ufw allow 443/tcp ufw allow PANEL_PORT/tcp ufw enable
Разрешите SSH до включения UFW, иначе вы закроете себе доступ. Замените PANEL_PORT портом, который показывает bt default.
🛡️ 6. Защита панели
- В Settings смените порт панели на другой высокий порт и обновите правило брандмауэра.
- Замените Security entrance (защитный вход) на собственный путь, который трудно угадать.
- Измените имя пользователя и пароль по умолчанию и включите двухфакторную аутентификацию, если она есть в вашей версии.
- Ограничьте доступ через Authorized IP, если ваш IP-адрес постоянен.
- Регулярно устанавливайте обновления: используйте уведомление об обновлении на главной странице панели и обновляйте систему командой
apt update && apt -y upgrade. - Удаляйте из App Store ненужное ПО.
После смены порта панель перезапускается; если вы потеряли доступ, прочитайте новые настройки по SSH командой bt.
✅ 7. Проверка
Bashbt default ss -tlnp | grep -E ':(80|443)\b' /www/server/nginx/sbin/nginx -t
Адрес панели должен открываться в браузере, порты 80 и 443 — слушаться, когда есть хотя бы один сайт, а nginx -t — сообщать, что синтаксис в порядке.
🧰 Устранение неполадок
- Страница панели не загружается: вас блокирует порт или брандмауэр, либо вы не указали защитный путь. Проверьте
bt defaultи правила брандмауэра, затем перезапустите командой/etc/init.d/bt restart. - Забыт пароль или имя пользователя: выполните
btи выберите пункт смены пароля или имени пользователя. - Установщик завершается ошибкой или останавливается: система, вероятно, не чистая или не хватает памяти. Проверьте
free -hиdf -h, а если там был другой веб-сервер, переустановите ОС на чистом VPS. - Let's Encrypt не срабатывает: домен ещё не указывает на VPS или порт 80 закрыт. Исправьте DNS и брандмауэр и повторите попытку.
🎉 aaPanel и стек LNMP готовы: создавайте сайты, защитите панель и регулярно обновляйте её.