Add VPN configuration documentation (AmneziaWG + VLESS Reality)
This commit is contained in:
102
projects/niikn/vpn.md
Normal file
102
projects/niikn/vpn.md
Normal 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`)
|
||||
Reference in New Issue
Block a user