Add VPN configuration documentation (AmneziaWG + VLESS Reality)

This commit is contained in:
2026-03-21 13:10:23 +00:00
parent 26fd82003d
commit d4708319e2

102
projects/niikn/vpn.md Normal file
View File

@@ -0,0 +1,102 @@
# VPN НИИКН — Finland VPS (78.17.0.9)
## Серверы
### Finland VPS (основной)
| Параметр | Значение |
|----------|----------|
| IP | 78.17.0.9 |
| Провайдер | adminvps.ru (Финляндия) |
| SSH | root / 1qaz!QAZ |
| Пинг из Москвы | ~25 мс |
### WhatsApp/Telegram Proxy VPS (побочный)
| Параметр | Значение |
|----------|----------|
| IP | 78.17.0.9 (тот же сервер) |
| WhatsApp | TCP 443 (TLS), 5222, 7777 |
| Telegram | SOCKS5 порт 1080 |
## Архитектура портов (HAProxy SNI Routing)
```
Клиент → :443 (HAProxy)
├── SNI = vpn.niikn.com → nginx:8090 → amneziavpnphp:8082
├── SNI = xray.niikn.com → nginx:8090 → 3x-ui:54321
├── SNI = microsoft.com → xRay:9443 (VLESS Reality)
└── SNI = всё остальное → wa-proxy:4430 (WhatsApp)
Клиент → :80 (HAProxy)
└── → nginx:8091 (статические файлы, ACME challenge)
AmneziaWG → :51955/UDP (прямой)
WhatsApp media → :7777 (прямой)
Telegram SOCKS5 → :1080 (прямой)
```
## AmneziaWG (amneziavpnphp)
| Параметр | Значение |
|----------|----------|
| Протокол | AmneziaWG (обфусцированный WireGuard) |
| Порт | UDP 51955 |
| Веб-панель | https://vpn.niikn.com |
| Логин | admin@niikn.com / 1qaz!QAZ |
| WG адрес сервера | 10.8.1.0/24 |
| Docker | amnezia-awg, amnezia-panel-web, amnezia-panel-db |
| Jc | 1 (обфускация) |
### Важно
- Kernel module: `wireguard` загружен (не wireguard-go)
- start.sh перезаписан вручную — панель regenerate сбросит его!
- При сбросе: зайти в контейнер amnezia-awg и заново прописать start.sh
## VLESS Reality (3x-ui)
| Параметр | Значение |
|----------|----------|
| Протокол | VLESS + XTLS Vision |
| Порт (внешний) | 443 (через HAProxy) |
| Порт (внутренний) | 9443 (xRay listen) |
| Маскировка | microsoft.com |
| Fingerprint | chrome |
| Public Key | VyhaxA3eGieu6cajDDyjqw_uRYnrVBOugz8xNmwfakA |
| Private Key | gEqTWVRAwsPX6tPRs-yk-DkE_Vqy2ABQwWalFARvzkY |
| Short ID | 519a6aa246ac7299 |
| UUID клиента | 2433e996-aae3-4b27-9918-849fc2036e0e |
| Веб-панель | https://xray.niikn.com |
| Логин | admin / 1qaz!QAZ |
| DB | /etc/x-ui/x-ui.db (SQLite) |
### VLESS ссылка для Happ
```
vless://2433e996-aae3-4b27-9918-849fc2036e0e@78.17.0.9:443?encryption=none&flow=xtls-rprx-vision&security=reality&sni=microsoft.com&fp=chrome&pbk=VyhaxA3eGieu6cajDDyjqw_uRYnrVBOugz8xNmwfakA&sid=519a6aa246ac7299&type=tcp&headerType=none#NIIKN-VPN-Finland
```
### Страница подключения для пользователей
https://vpn.niikn.com/connect
## Nginx конфиги
| Файл | Описание |
|------|----------|
| /etc/nginx/sites-available/vpn.niikn.com | Панель AmneziaVPN + /connect страница |
| /etc/nginx/sites-available/xray.niikn.com | 3x-ui панель |
| /etc/nginx/sites-available/acme-challenge | Статика + ACME на порту 8091 |
| ВАЖНО | sites-enabled — не симлинки, копируются вручную |
## SSL сертификаты (Let's Encrypt)
| Домен | Cert path |
|-------|-----------|
| vpn.niikn.com | /etc/letsencrypt/live/vpn.niikn.com/ |
| xray.niikn.com | /etc/letsencrypt/live/xray.niikn.com/ |
Обновление: `certbot renew` (webroot через nginx:8091)
## Известные проблемы
1. **nginx listen 80 конфликтует с HAProxy** — в nginx конфигах НЕТ блока `listen 80`
2. **start.sh в amnezia-awg пуст** — панель генерирует только `tail -f /dev/null`, нужно перезаписать вручную
3. **sites-enabled не симлинки** — при изменении sites-available нужно копировать: `cp sites-available/X sites-enabled/X`
4. **3x-ui webBasePath** — установлен в `/`, менять через SQLite (`settings` table, key `webBasePath`)