Аварийный CLI
Аварийный CLI — это встроенная утилита для случаев, когда веб-интерфейс панели недоступен или обычные действия из него не помогают. Она работает прямо в контейнере, подключается к базе и Valkey и не зависит от браузера, входа и API.
CLI нужен, если вы забыли пароль администратора, случайно отключили парольный
вход, хотите освободить диск от старых записей или потеряли SECRET_KEY для
ноды.
Запуск
docker exec -it xpanel cli
Появится меню XLADA Rescue CLI v0.4. Перед показом меню утилита проверяет подключение к базе данных и Valkey: если хоть одно недоступно, она сообщит об ошибке и завершится. Значит, чинить нужно сам контейнер, а не данные.
Все команды выполняются в обход API и журнала действий администраторов. Они пишут в базу напрямую, а часть из них удаляет данные без возможности отката. Перед опасной операцией сделайте дамп базы.
Что умеет
| Команда | Что делает |
|---|---|
| Reset superadmin | удаляет супер-администратора из базы |
| Enable password authentication | включает вход по паролю |
| Generate keypairs | создаёт ключи для шифрования правил ответа |
| Clean up HWID Devices | очищает таблицу hwid_user_devices |
| Clean up SRH Table | очищает историю запросов подписки |
| Clean up Users Usage Table | очищает историю трафика пользователей |
| Delete Users Usage by date range | удаляет историю трафика за период |
| Reset certs | удаляет внутренние сертификаты панели |
| Get SECRET_KEY for a XLADA Node | выводит SECRET_KEY для ноды |
| Exit | выходит из утилиты |
Сброс администратора
Reset superadmin полностью удаляет первую учётную запись администратора. После этого откройте панель в браузере — она снова предложит создать администратора с нуля. Утилита спрашивает подтверждение и сбрасывает закэшированные настройки, чтобы панель не помнила старые данные.
Вход по паролю
Enable password authentication пригодится, если вы отключили парольный вход в настройках и остались без доступа. Команда возвращает переключатель в положение «включено», после чего можно войти обычным паролем.
Ключи для правил ответа
Generate keypairs создаёт пару ключей для шифрования ответов правил
маршрутизации. Можно выбрать age1 (X25519) или age1pq1 — гибридную схему,
устойчивую к квантовым вычислениям. Публичный ключ вставляется в правило,
приватный хранится у клиента и на сервер не передаётся.
Очистка данных
Три команды очистки удаляют данные целиком, каждая со своим подтверждением:
- Clean up HWID Devices — все устройства пользователей;
- Clean up SRH Table — историю запросов подписки;
- Clean up Users Usage Table — историю трафика и пересобирает индексы.
Delete Users Usage by date range удаляет историю трафика только за нужный
период. Даты вводятся строго в формате ДД-ММ-ГГГГ, например 01-01-2026.
Можно выбрать одиночный запрос (быстрее, но дольше держит блокировку) или
пакетный режим с индикатором прогресса. В конце выполняется VACUUM, поэтому
окно закрывать нельзя — прерывание оставит таблицу раздутой.
# перед очисткой сохраните дамп
docker exec xpanel-db pg_dump -U xpanel xpanel > backup-$(date +%F).sql
Сертификаты и ноды
Reset certs удаляет внутренние сертификаты. После этого SECRET_KEY на
всех нодах перестанет работать, и их придётся подключить заново. После команды
перезапустите панель:
docker compose down && docker compose up -d
Get SECRET_KEY for a XLADA Node выводит SECRET_KEY для подключения новой
ноды — выручает, если получить его в панели не удаётся.
Reset certs ломает связь со всеми нодами сразу. Не выполняйте её, если не готовы заново выдать ключи каждому серверу.
CLI ноды
У ноды свой CLI с отдельным набором команд:
docker exec -it xpanel-node cli
Он умеет выгрузить текущую конфигурацию Xray, разорвать соединения по IP и очистить логи Xray. Команды доступны и без меню:
docker exec -it xpanel-node cli --dump-config # конфигурация с подсветкой
docker exec -it xpanel-node cli --dump-config-raw # машиночитаемый вывод
docker exec -it xpanel-node cli --kill-sockets # разорвать соединения по IP
docker exec -it xpanel-node cli --clear-logs # очистить логи Xray
docker exec -it xpanel-node cli --help # справка
Очистка логов выполняет ротацию файлов, Xray при этом не перезапускается и трафик не прерывается.
Вывод --dump-config-raw удобно перенаправлять в файл для сравнения версий
конфигурации:
docker exec -i xpanel-node cli --dump-config-raw > xray-config.json
Что дальше
- Частые ошибки — разбор типовых сбоев панели.
- Полезные команды — повседневная работа с контейнерами.
- Обновление — как обновлять панель и ноды.
- Безопасность панели — защита доступа.