Установка панели
Панель устанавливается одной командой, которая ничего не спрашивает. Единственное, что она выбирает за вас, — база данных: без неё панель не может хранить остальные настройки. Всё прочее выбирается в мастере настройки, который открывается при первом заходе в панель.
Выберите, что установить, и скопируйте команду:
bash <(curl -fsSL https://raw.githubusercontent.com/nexora-vpn/panel/main/install.sh)Запускайте от root. В конце скрипт печатает одноразовую ссылку настройки: откройте её, чтобы создать учётную запись администратора.
Установка скриптом
Запускайте от root. С SQLite, которой не нужна никакая другая служба:
bash <(curl -fsSL https://raw.githubusercontent.com/nexora-vpn/panel/main/install.sh)В конце установщик печатает ссылку для настройки:
$ bash <(curl -fsSL https://raw.githubusercontent.com/nexora-vpn/panel/main/install.sh) ==> installing Nexora Panel (linux-amd64) ==> downloading the panel ==> downloading node binaries ==> migrating the database database migrated: sqlite no admin seeded; the panel will open its setup wizard on first start ==> the panel will listen on port 28431 ==> Nexora 0.0.3 is installed Finish the setup by opening one of these links — whichever address reaches this server from where you are: http://203.0.113.10:28431/setup?t=9f3c1ad2… (as the internet sees this host) Port 28431 was picked at random and is free on this host — open it in the firewall if one is running. The wizard can move it before you finish. Service: systemctl status nexora-panel Logs: journalctl -u nexora-panel -f
Откройте ссылку и продолжайте по странице Мастер настройки. Токен в ссылке создаёт главного администратора, поэтому никому её не показывайте. После завершения настройки она перестаёт работать.
Параметры
| Параметр | Действие |
|---|---|
--postgres | установить и настроить PostgreSQL на этом сервере и использовать её вместо SQLite |
--version v1.2.3 | установить конкретный выпуск панели вместо самого нового |
--node-version v1.2.3 | подготовить для установщиков узлов конкретный выпуск узла вместо самого нового |
--uninstall | удалить панель; см. Удаление |
SQLite или PostgreSQL
SQLite подходит большинству панелей: один файл, который легко сохранить и перенести. Выбирайте PostgreSQL, если она у вас уже работает, если база будет лежать на сетевом хранилище или если одновременно трафик гонят больше примерно 10 000 пользователей. Чтобы сменить базу позже, установите панель заново с другой базой и восстановите резервную копию в мастере настройки.
Установка через Docker
Два стека, по одному на каждую базу:
git clone https://github.com/nexora-vpn/panel
cd panel/docker/sqlite # or: cd panel/docker/postgres
docker compose up -d
docker compose logs panel | grep setupДля стека с PostgreSQL перед первым запуском скопируйте .env.example в .env и задайте пароль.
Панель в Docker слушает порт 2095. Порт закреплён в файле compose (NEXORA_WEB_LISTEN) вместе с публикацией порта, поэтому мастер не может его сменить: если нужен другой порт, измените оба места в файле compose.
По умолчанию Docker публикует порты только по IPv4. На сервере только с IPv6 включите IPv6 в демоне Docker ("ipv6": true и "ip6tables": true в /etc/docker/daemon.json) и публикуйте порт в обоих семействах:
ports:
- "0.0.0.0:2095:2095"
- "[::]:2095:2095"Как запустить узел в Docker на том же сервере, см. Панель и узел на одном сервере.
Требования
- Linux с systemd: Debian 11+, Ubuntu 20.04+, RHEL 9+ или похожий. Поддерживаются 64-битные x86 и ARM, а также 32-битные x86 и ARM. Без systemd используйте Docker.
- Права root, а также
curlиtarна сервере. - Один открытый TCP-порт для панели.
Что делает установщик
- Скачивает панель для архитектуры этого сервера в
/opt/nexora-panel. - Кладёт бинарные файлы узла для amd64 и arm64 в
/var/opt/nexora/bin. Позже панель отдаёт их установщикам узлов, так что узлы скачивают их с вашей панели. - Записывает
config.jsonс подключением к базе, а с--postgresустанавливает и настраивает PostgreSQL. - Создаёт таблицы базы.
- Выбирает случайный свободный высокий порт, чтобы ещё не настроенная панель не висела на порту, который сканеры проверяют первым.
- Устанавливает и запускает службу
nexora-panelи добавляетnexora-panelв PATH для командной строки. - Печатает ссылку для настройки для каждого найденного адреса, начиная с того, под которым этот сервер видит интернет.
Все пути, которые он использует, перечислены в Файлы и порты. Пока настройка не завершена, панель отвечает только на ссылку для настройки. Если позже снова выполнить ту же команду, панель обновится на месте; см. Обновление.
Потеряли ссылку?
Выведите токен ещё раз и соберите адрес вокруг него:
nexora-panel setup-token
nexora-panel config get web_listen_port
# then open http://203.0.113.10:PORT/setup?t=TOKENВ Docker: docker compose exec panel /app/nexora-panel setup-token.
IPv6
Настраивать ничего не нужно. Панель слушает универсальный адрес IPv6, который на сервере с двумя стеками отвечает и по IPv4; на сервере с выключенным IPv6 она сама переходит на IPv4. Ссылка для настройки по IPv6 печатается в квадратных скобках — так её понимает браузер:
http://[2001:db8::10]:28431/setup?t=9f3c1ad2…Чтобы слушать только одно семейство адресов, задайте IP для прослушивания в мастере.
