mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-10-14 09:55:01 +03:00
docs(readme): refresh all seven READMEs for the current feature set
The READMEs had not moved since 2026-07-07, 341 commits ago, and had drifted far enough to misdescribe the panel: AmneziaWG and MTProto inbounds were missing from the protocol list entirely, the outbound list predated PIA, and the API section still advertised Swagger rather than scoped, optionally expiring tokens. Add the two missing protocols plus a bullet each for what makes them notable — AmneziaWG runs on the embedded userspace netstack, so unlike the DKMS/awg-quick shape it originally shipped with there is nothing to install, and MTProto client edits hot-apply through the mtg-multi management API instead of bouncing the process. Fold the smaller additions into the bullets they belong to (HWID device limits, IP-limit exemptions, renewal cycles, inbound cloning, balancer-to-balancer fallback, geosite/geoip browsing, named subscription formats) and add one for PWA installability. Point documentation at docs.sanaei.dev, which the panel sidebar already links to and which supersedes the wiki, using each README's own locale where the docs site has one (fa/ru/zh). Bump the pinned install example to the current stable tag, note the .sha256 verification install.sh and update.sh now perform, and document XUI_NODE_TOKEN_KEY_FILE / XUI_NODE_TOKEN_KEY, which no markdown in the repo covered. All seven files move together so the language picker keeps pointing at equivalent documents.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Переменные окружения
|
||||
description: Полный справочник по переменным окружения XUI_* в 3x-ui — база данных, панель, логирование, память и монитор работоспособности туннеля.
|
||||
description: Полный справочник по переменным окружения XUI_* в 3x-ui — база данных, панель, логирование, память, шифрование токенов узлов и монитор работоспособности туннеля.
|
||||
icon: Variable
|
||||
---
|
||||
|
||||
@@ -34,6 +34,36 @@ icon: Variable
|
||||
| `XUI_ENABLE_FAIL2BAN` | `true` | Включить ограничение по IP на основе Fail2ban. |
|
||||
| `XUI_SKIP_HSTS` | `false` | Не отправлять заголовок HSTS — установите `true`, когда TLS терминируется обратным прокси. |
|
||||
|
||||
## Шифрование токенов узлов
|
||||
|
||||
API-токены узлов — и сохранённый токен PIA — по умолчанию хранятся в открытом
|
||||
виде. Шифрование при хранении включается явно и отказывает безопасно: при любом
|
||||
режиме, кроме `off`, панель не запустится, если не сможет загрузить ключ.
|
||||
|
||||
| Variable | Default | Description |
|
||||
| ------------------------- | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `NODE_TOKEN_ENCRYPTION` | `off` | `off`, `migration` (чтение принимает открытый текст или шифротекст, запись всегда шифрует) или `required` (запись та же, но без ключа запуск не удастся). Префикса `XUI_` здесь нет. |
|
||||
| `XUI_NODE_TOKEN_KEY_FILE` | `/etc/x-ui/node_token_key.json` | JSON-связка ключей с правами `0600` или строже. Загружается первой. |
|
||||
| `XUI_NODE_TOKEN_KEY` | — | Один 32-байтный ключ в base64, читается только при неудачной загрузке файла ключей. Его идентификатор фиксирован (`env`), поэтому ротация невозможна. |
|
||||
|
||||
Файл ключей задаёт активный ключ и все прежние ключи, ещё нужные для расшифровки:
|
||||
|
||||
```json
|
||||
{ "active": "k1", "keys": { "k1": "<base64 32-byte key>" } }
|
||||
```
|
||||
|
||||
Сгенерируйте ключ командой `openssl rand -base64 32`; ключи никогда не
|
||||
принимаются в аргументах командной строки. После включения режима перешифруйте
|
||||
строки, уже находящиеся в базе, активным ключом:
|
||||
|
||||
```bash
|
||||
x-ui encrypt-tokens
|
||||
```
|
||||
|
||||
Команда обрабатывает строки узлов; токен PIA перешифровывается при следующем
|
||||
чтении. Для ротации добавьте новый ключ в `keys`, укажите его в `active`,
|
||||
сохраните старый ключ для расшифровки и снова выполните `x-ui encrypt-tokens`.
|
||||
|
||||
## Логирование и бинарные файлы
|
||||
|
||||
| Variable | Default | Description |
|
||||
|
||||
Reference in New Issue
Block a user