From d4708319e2a489d2519e7aaf163ceacc7ee7196f Mon Sep 17 00:00:00 2001 From: oleg Date: Sat, 21 Mar 2026 13:10:23 +0000 Subject: [PATCH] Add VPN configuration documentation (AmneziaWG + VLESS Reality) --- projects/niikn/vpn.md | 102 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 projects/niikn/vpn.md diff --git a/projects/niikn/vpn.md b/projects/niikn/vpn.md new file mode 100644 index 0000000..3873a6e --- /dev/null +++ b/projects/niikn/vpn.md @@ -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`)