1.ultimate_RemnaNode_install
Продвинутый скрипт автоматического развертывания Remnawave Node (Xray-core), спроектированный с упором на максимальную скрытность, защиту от активного зондирования (DPI) и гибкую маршрутизацию.
Это не просто VPN-установка. Это комплексная Defense-in-Depth инфраструктура, которая прячет ваш прокси за реальным облачным хранилищем, анализирует атаки в реальном времени и позволяет строить каскадные цепи прокси-серверов.
✨ Ключевые архитектурные особенности
- 🧠 Active DPI Defense (Динамический Graylist): Встроенный микросервис dpi-detector в реальном времени анализирует логи Nginx. При обнаружении сканеров уязвимостей или попыток активного зондирования (Active Probing), IP-адрес атакующего заносится в серый список. После этого Nginx на уровне L4 (TCP Stream) отрезает этот IP от ядра Xray, принудительно отдавая ему "белый" сайт-камуфляж.
- 🎭 Идеальная L4/L7 Маскировка: Единая точка входа на порт 443. Nginx Stream распределяет трафик по SNI: валидные запросы идут в Xray (Reality), весь остальной интернет-мусор и сканеры проваливаются в HTTP-блок, где их встречает легитимное и полностью рабочее файловое облако Nextcloud.
- 🕸️ Proxy Chaining (Каскадирование): Встроенная интеграция с NaïveProxy. Скрипт позволяет в пару кликов развернуть как серверную часть (вход для клиентов), так и клиентскую (выходной туннель на следующую ноду), маскируя транзитный трафик под обычные сессии браузера Chrome.
- 🔀 Умный локальный роутинг (SOCKS5): В ядро интегрированы локальные интерфейсы для точечного обхода ограничений прямо на ноде:
- Cloudflare WARP (порт 40000): Для прозрачного доступа к ChatGPT, Netflix и сервисам геолокации без риска бана IP дата-центра.
- B4 DPI Bypass (порт 1080): Для обхода региональных замедлений и блокировок (например, YouTube) на стороне самой ноды.
- 🔒 Hardened Security: Защита SSH через Fail2ban (с поддержкой рецидивов), блокировка ICMP-пингов, преконфигурированный UFW и защита от массового сканирования портов через TrafficGuard.
- 🚀 Оптимизация ядра: Автоматический тюнинг TCP BBR + fq_codel, расширение системных лимитов файловых дескрипторов (nofile до 1 млн) и тюнинг TCP keepalive для предотвращения обрывов "спящих" соединений за NAT.curl -fsSL
--
Настройки B4
- geoip:https://github.com/DanielLavrushin/b4geoip/releases/latest/download/geoip.dat
- geosite:https://raw.githubusercontent.com/runetfreedom/russia-v2ray-rules-dat/release/geosite.dat
Сэты
YOUTUBE:
YouTube - заработал на Selectel
Youtube + Telegram + Meta (mobile) + Загрузить пэйлоад в закрепе
googlevideo.com-pos-search-4
youtube (с группы)
hyperion + payload: tls_gosuslugi_ru.bin
telegram
meta
| Сервис | Назначение |
|---|---|
| remnanode | VPN-нода Remnawave (xray-core) |
| remnawave-nginx | Nginx — SNI-роутинг, прокси xHTTP/gRPC/WS |
| nextcloud | Файловое облако (камуфляж) |
| b4 | B4 DPI Bypass — обход блокировок |
| goaccess | Визуализация логов nginx в реальном времени |
| watchtower | Автообновление контейнеров (каждые 24 часа) |
| Утилита | Назначение |
|---|---|
| ctop | Мониторинг Docker-контейнеров в терминале |
| lazydocker | TUI для управления Docker |
| fail2ban | Защита от брутфорса SSH |
| TrafficGuard | Блокировка сканеров по базам IP |
| Certbot | Let's Encrypt сертификаты |
| Zapret | Списки заблокированных в РФ сайтов |
| zsh + Oh My Zsh | Современный shell с плагинами |
| Настройка | Описание |
|---|---|
| BBR + fq_codel | Ускорение TCP |
| TCP Fast Open | Быстрый handshake |
| Socket buffers 128 MB | Высокая пропускная способность |
| Keepalive 60/10/5 | Быстрое обнаружение мёртвых соединений |
| IP Forwarding | Для VPN-маршрутизации |
| Настройка | Описание |
|---|---|
| nofile | 1048576 — макс. открытых файлов |
| nproc | 65536 — макс. процессов |
| fs.file-max | 1000000 — системный лимит дескрипторов |
| Настройка | Описание |
|---|---|
| UFW | deny incoming, whitelist SSH, 443 + 7443 открыты |
| fail2ban | sshd (3 попытки → бан 48ч), recidive (до 4 недель) |
| ICMP | echo-request заблокирован (сервер не пингуется) |
| Nginx | Блокировка ботов/сканеров по User-Agent |
| URL | Назначение | Авторизация |
|---|---|---|
| https://DOMAIN/ | Nextcloud | Настроить при первом входе |
| https://DOMAIN:7443/ | B4 DPI Bypass | adminremnanode / B4_PASSWORD |
| https://DOMAIN/nginx-go-access-dash/ | GoAccess логи | adminremnanode / B4_PASSWORD |
Структура файлов
├── .env # Конфигурация (SECRET_KEY, домен, пути)
├── docker-compose.yml # Docker Compose
├── nginx-stream.conf # Nginx (stream + http)
├── .htpasswd_b4 # Пароли для B4/GoAccess
├── nextcloud/ # Конфиг Nextcloud
├── nextcloud_data/ # Данные Nextcloud
├── b4_config/ # Конфиг B4 DPI
├── nginx_logs/ # Логи nginx
├── goaccess_html/ # HTML-отчёты GoAccess
└── xray/share/
├── zapret.dat # Список запрещённых сайтов
├── geoip.dat # GeoIP база
└── geosite.dat # GeoSite база
Команды управления
| Команда | Описание |
|---|---|
| d | Статус контейнеров (алиас) |
| lzd | lazydocker (TUI) |
| dcu | docker compose up -d |
| dcd | docker compose down |
| dl remnanode | docker logs remnanode |
| Обновить ноду | cd /opt/remnawave && docker compose pull remnanode && docker compose up -d remnanode |
| Обновить Zapret вручную | bash /opt/remnawave/update-zapret.sh |
| Проверить fail2ban | fail2ban-client status sshd |
| Управление TrafficGuard | rknpidor — Интерактивное меню |
| Сертификаты | certbot certificates certbot renew --dry-run |
Автоматические задачи (Cron)
| Время | Задача |
|---|---|
| 03:00 | Certbot — продление сертификатов |
| 03:00 | Zapret — обновление списков |
| 04:00 | TrafficGuard — обновление баз IP |
| 24ч | Watchtower — обновление контейнеров |
Повторный запуск (обновление SNI)
Если скрипт обнаружит существующую установку, предложит обновить только Reality SNI:
Домен: example.com
Reality SNI: google.com
Обновить только Reality SNI? [y/N]: y
конфиг
🛠 Обновленная инструкция по заполнению полей
1. VLESS (Reality / Vision)
Для этого протокола мы объединяем твой системный тюнинг (BBR, WindowClamp) и фрагментацию.
Mux JSON: ❌ НЕ ИСПОЛЬЗОВАТЬ. Mux ломает логику XTLS-Vision и может сделать соединение более заметным для DPI.
SockOpt JSON: ✅ КОПИРОВАТЬ ЭТО:
"dialerProxy": "fragment",
"tcpcongestion": "bbr",
"tcpWindowClamp": 600,
"interface": "wg0",
"tcpKeepAliveInterval": 5,
"fragment": {
"packets": "tlshello",
"length": "50-100",
"interval": "10-20"
}
}
Что мы взяли из твоего примера:
- tcpcongestion: "bbr" — значительно ускоряет передачу данных при потерях пакетов.
- tcpWindowClamp: 600 — ограничивает размер окна TCP, что мешает DPI анализировать большие объемы данных сразу.
- interface: "wg0" — если у тебя трафик должен идти через конкретный интерфейс (например, Wireguard), это поле критично.
2. xHTTP (TCP)
Используем твои параметры xmux и extra, объединяя их в одном разделе xHTTP, и добавляем тюнинг в SockOpt.
xHTTP JSON: ✅ КОПИРОВАТЬ ЭТО:
"xmux": {
"cMaxReuseTimes": 0,
"maxConcurrency": "16-32",
"maxConnections": 0,
"hKeepAlivePeriod": 0,
"hMaxRequestTimes": "600-900",
"hMaxReusableSecs": "1800-3000"
},
"noGRPCHeader": false,
"xPaddingBytes": "100-1000",
"scMaxEachPostBytes": 1000000,
"scMinPostsIntervalMs": 30,
"scStreamUpServerSecs": "20-80"
}
SockOpt JSON: ✅ КОПИРОВАТЬ ЭТО:
"dialerProxy": "fragment",
"tcpcongestion": "bbr",
"tcpWindowClamp": 600,
"fragment": {
"packets": "tlshello",
"length": "50-100",
"interval": "10-20"
}
}
3. WebSocket (WS) — Прямое подключение
Здесь Mux будет полезен вместе с твоими системными настройками.
Mux JSON: ✅ КОПИРОВАТЬ ЭТО:
"enabled": true,
"concurrency": 16,
"version": 2
}
SockOpt JSON: ✅ КОПИРОВАТЬ ЭТО:
"dialerProxy": "fragment",
"tcpcongestion": "bbr",
"tcpKeepAliveInterval": 5,
"fragment": {
"packets": "tlshello",
"length": "50-100",
"interval": "10-20"
}
}
4. gRPC
Для gRPC важен низкий пинг, поэтому оставляем BBR, но Mux отключаем.
Mux JSON: ❌ НЕ ИСПОЛЬЗОВАТЬ. (gRPC сам управляет потоками).
SockOpt JSON: ✅ КОПИРОВАТЬ ЭТО:
"dialerProxy": "fragment",
"tcpcongestion": "bbr",
"fragment": {
"packets": "tlshello",
"length": "50-100",
"interval": "10-20"
}
}
ℹ️ Почему это важно (по твоим файлам):
- Фрагментация (tlshello): Режет первый пакет ClientHello (где виден SNI), не давая ТСПУ заблокировать соединение на старте.
- BBR (tcpcongestion): Твой сервер увидит, что клиент работает на BBR, и будет отдавать данные максимально быстро, минуя стандартные алгоритмы замедления TCP.
- Interface (wg0): Если ты используешь это в связке с локальным VPN или WARP (как в твоем конфиге OUT_WARP), этот параметр гарантирует, что трафик пойдет по нужному маршруту.
Репозитории GitHub, используемые в проекте Remnawave Node
Основные компоненты
| Репозиторий | Описание | Использование |
|---|---|---|
| remnawave/node | Remnawave Node (Xray-core) | Основной VPN-контейнер |
| nginx/nginx | Nginx | Веб-сервер для SNI-роутинга и прокси |
| linuxserver/docker-nextcloud | Nextcloud | Файловое облако для камуфляжа |
| bolucat/naive | NaiveProxy | Forward Proxy с маскировкой под Chrome |
| lavrushin/b4 | B4 DPI Bypass | Обход Deep Packet Inspection |
| allinurl/goaccess | GoAccess | Визуализация логов nginx в реальном времени |
| containrrr/watchtower | Watchtower | Автообновление Docker-контейнеров |
Гео-данные и списки блокировок
| Репозиторий | Описание | Использование |
|---|---|---|
| runetfreedom/russia-v2ray-rules-dat | Гео-файлы для обхода блокировок в РФ | geoip.dat, geosite.dat, zapret.dat |
| Loyalsoldier/v2ray-rules-dat | V2Ray правила (резервный источник) | geoip.dat, geosite.dat |
| kutovoys/ru_gov_zapret | Список запрещённых сайтов РФ | zapret.dat |
| hxehex/russia-mobile-internet-whitelist | Whitelist российских доменов | Фильтрация для автоподбора SNI |
Безопасность и защита
| Репозиторий | Описание | Использование |
|---|---|---|
| DonMatteoVPN/TrafficGuard-auto | TrafficGuard | Защита от сканирования портов |
| XTLS/RealiTLScanner | RealiTLScanner | Автоподбор Reality SNI |
Инструменты и утилиты
| Репозиторий | Описание | Использование |
|---|---|---|
| ohmyzsh/ohmyzsh | Oh My Zsh | Современный shell с плагинами |
| zsh-users/zsh-autosuggestions | Zsh Autosuggestions | Автодополнение команд в Zsh |
| zsh-users/zsh-syntax-highlighting | Zsh Syntax Highlighting | Подсветка синтаксиса в Zsh |
| bcicen/ctop | ctop | Мониторинг Docker-контейнеров в терминале |
| jesseduffield/lazydocker | lazydocker | TUI для управления Docker |
Инструменты сборки
| Репозиторий | Описание | Использование |
|---|---|---|
| caddyserver/xcaddy | xcaddy | Сборка Caddy с кастомными плагинами |
| klzgrad/forwardproxy | forwardproxy | Плагин для Caddy (NaiveProxy) |
Клиентские приложения
| Репозиторий | Описание | Платформа |
|---|---|---|
| MatsuriDayo/NekoBoxForAndroid | NekoBox | Android |
| hiddify/hiddify-app | Hiddify | Windows |
| MatsuriDayo/nekoray | NekoRay | Windows |
Docker образы
| Образ | Репозиторий | Описание |
|---|---|---|
| remnawave/node:latest | remnawave/node | Remnawave Node (Xray-core) |
| nginx:1.28 | nginx/nginx | Nginx |
| linuxserver/nextcloud:latest | linuxserver/docker-nextcloud | Nextcloud |
| pocat/naiveproxy:latest | bolucat/naive | NaiveProxy Server |
| pocat/naiveproxy:client | bolucat/naive | NaiveProxy Client |
| lavrushin/b4:latest | lavrushin/b4 | B4 DPI Bypass |
| allinurl/goaccess:latest | allinurl/goaccess | GoAccess |
| containrrr/watchtower:latest | containrrr/watchtower | Watchtower |
| alpine:latest | alpine | DPI Detector |
Примечания
- Гео-файлы: Основным источником является runetfreedom/russia-v2ray-rules-dat, оптимизированный для обхода блокировок в РФ. Резервные источники используются при недоступности основного.
- NaiveProxy: Использует готовые Docker образы pocat/naiveproxy для серверной и клиентской частей.
- Автообновление: Watchtower автоматически обновляет контейнеры с меткой com.centurylinklabs.watchtower.enable=true каждые 24 часа.
- Гео-файлы обновляются: Ежедневно в 03:00 через cron-задачу.
- TrafficGuard: Обновляет базы IP ежедневно в 04:00 со случайной задержкой до 30 минут.