Файлы и порты
Где панель и узел хранят данные на диске, какие порты слушают и какие переменные окружения меняют их поведение. Всё, что здесь не перечислено, — от администраторов и настроек до пользователей и сертификатов, — хранится в базе панели и управляется из панели.
Файлы панели
| Путь | Что это |
|---|---|
/opt/nexora-panel/nexora-panel | программа |
/opt/nexora-panel/nexora-panel.previous | программа до последнего обновления, сохраняется для отката |
/opt/nexora-panel/config.json | подключение к базе и больше ничего |
/var/opt/nexora/nexora.db | база SQLite (пока панель работает, рядом лежат файлы -wal и -shm) |
/var/opt/nexora/bin/ | бинарные файлы узла, которые панель отдаёт установщикам узлов |
/var/opt/nexora/sub-themes/ | темы страницы подписки |
/var/opt/nexora/presets/ | ваши собственные файлы каталога пресетов, добавляемые к встроенным |
/var/opt/nexora/backups/ | архивы резервных копий и снимки перед восстановлением (читать может только root) |
/var/opt/nexora/rulesets/ | копии файлов наборов правил, которые панель отдаёт узлам; можно очистить, панель скачает их заново |
/etc/systemd/system/nexora-panel.service | служба |
Копирование файлов базы при работающей панели — не резервная копия. Используйте резервное копирование самой панели (Резервное копирование и восстановление): оно снимает согласованную копию, ничего не останавливая.
config.json выглядит так:
{ "db": { "driver": "sqlite", "dsn": "/var/opt/nexora/nexora.db" } }С PostgreSQL driver равен postgres, а dsn — строка подключения. max_open_conns задаёт размер пула соединений; не указывайте его, если только сервер PostgreSQL не используется ещё и другими программами.
В Docker
Каждый стек панели хранит то, что должно пережить контейнер, рядом со своим файлом compose:
| Путь | Что это |
|---|---|
./data | база SQLite (стек с PostgreSQL использует именованный том) |
./backups | архивы резервных копий |
./bin | бинарные файлы узла |
./rulesets | копии наборов правил; можно очистить |
./sub-themes | темы страницы подписки |
Файлы узла
| Путь | Что это |
|---|---|
/opt/nexora-node/nexora-node | программа |
/opt/nexora-node/config.json | адрес управляющего порта и пути к сертификатам, больше ничего |
/var/opt/nexora/certs/ssl_cert.pem | собственный сертификат узла |
/var/opt/nexora/certs/ssl_key.pem | его закрытый ключ |
/var/opt/nexora/certs/panel_ca.pem | сертификат панели — единственный, который принимает узел |
/var/opt/nexora/cache/ | наборы правил и другие файлы, присланные панелью; можно удалить, панель пришлёт их снова |
/etc/systemd/system/nexora-node.service | служба |
Всё, что обслуживает узел, присылает панель, и хранится это в памяти. Перезапущенный узел ничего не обслуживает, пока панель снова не пришлёт ему конфигурацию, а это занимает секунды. Сертификаты — единственные файлы на узле, которые стоит резервировать.
В Docker узел хранит ./certs и ./cache рядом со своим файлом compose.
Когда панель и узел делят сервер, /var/opt/nexora содержит данные обоих: база, bin, backups и остальное принадлежат панели, а certs и cache — узлу. См. Панель и узел на одном сервере.
Порты
| Порт | Кто | Что |
|---|---|---|
| случайный высокий TCP-порт | панель (установка скриптом) | веб-интерфейс панели, API и подписки. Установщик выбирает свободный порт и печатает его |
| 2095 TCP | панель (Docker) | то же самое, порт закреплён в файле compose |
| 62050 TCP | узел | управляющий порт. Пользоваться им может только панель; разрешайте его только с адреса панели |
| порты инбаундов | узел | то, к чему подключаются ваши пользователи; выбирается в панели |
| 5432 TCP, только локально | PostgreSQL (с --postgres) | база, к которой панель обращается на 127.0.0.1 |
Порт панели можно изменить в мастере настройки, позже — на странице настроек или командой nexora-panel config set web_listen_port. И панель, и узел слушают IPv6 и IPv4 одновременно, а на сервере с выключенным IPv6 переходят на IPv4.
Переменные окружения
Панель
| Переменная | Действие |
|---|---|
NEXORA_DB_DRIVER | sqlite или postgres |
NEXORA_DB_DSN | подключение к базе: путь к файлу для SQLite, строка подключения для PostgreSQL |
NEXORA_DB_MAX_OPEN_CONNS | размер пула соединений с базой |
NEXORA_WEB_LISTEN | закрепляет адрес прослушивания (IP:PORT). Тогда панель игнорирует адрес из своих настроек, и мастер настройки не может его изменить. Так работают стеки Docker |
Они имеют приоритет над config.json. nexora-panel run -listen IP:PORT закрепляет адрес так же, как NEXORA_WEB_LISTEN.
Узел
| Переменная | Действие |
|---|---|
NEXORA_NODE_LISTEN | адрес управляющего порта, по умолчанию [::]:62050 |
NEXORA_NODE_CERT | файл сертификата узла |
NEXORA_NODE_KEY | файл его закрытого ключа |
NEXORA_NODE_CLIENT_CA | файл сертификата панели |
NEXORA_STATE_DIR | каталог для certs и cache, по умолчанию /var/opt/nexora |
Они имеют приоритет над config.json узла. Установщик узла также читает NEXORA_INSTALL_TOKEN вместо --token.
Связанные страницы
- Командная строка: команды обеих программ.
- Установка панели и Добавление узла: что и куда кладут установщики.
