Данный скрипт разработан для упрощённой настройки обратного прокси-сервера с использованием NGINX и Xray, а также для автоматизированной установки панели управления и ноды Remnawave. В этой конфигурации Xray работает непосредственно на порту 443, перенаправляя трафик через сокет, который слушает NGINX. Такой подход минимизирует лишние затраты на TCP, обеспечивая более высокую производительность и надёжность соединения.
Important
Этот скрипт был протестирован в среде виртуализации KVM. Для корректной работы вам потребуется собственный домен, который необходимо привязать к Cloudflare. Скрипт рекомендуется запускать с правами root на свежеустановленной системе.
Скрипт поддерживает установку как на одном сервере (панель и нода вместе), так и на двух отдельных серверах в зависимости от ваших потребностей:
- Единый сервер: Подходит для компактного развертывания, где панель управления и Xray нода устанавливаются на одной машине.
- Сервер для панели: Используется как центр управления, не содержит Xray ноду.
- Сервер для ноды: Размещает Xray ноду и заглушку Self Steal для VLESS REALITY. Чтобы обеспечить корректную работу, вам нужно заранее подготовить три домена (или поддомена): первый будет использоваться для панели управления, второй — для обработки подписок, а третий — для сайта-заглушки Self Steal, размещённого на сервере с нодой.
- Настройте Cloudflare:
- Привяжите ваш домен к Cloudflare.
- Добавьте следующие DNS записи:
| Type | Name | Content | Proxy status |
|---|---|---|---|
| A | example.com | your_server_ip | DNS only |
| CNAME | panel.example.com | example.com | DNS only |
| CNAME | sub.example.com | example.com | DNS only |
- Настройки SSL/TLS в Cloudflare:
- Перейдите в раздел SSL/TLS > Overview и выберите Full для параметра Configure.
- Установите Minimum TLS Version на TLS 1.3.
- Включите TLS 1.3 (true) в разделе Edge Certificates.
- Выберите опцию, которая позволяет установить панель и ноду на одной машине. После завершения процесса скрипт автоматически перезапустит панель и предоставит все необходимые данные для входа в неё.
- Начните с установки панели на первом сервере. Дождитесь, пока скрипт завершит настройку и выдаст данные для входа в панель.
- Зайдите в панель управления, перейдите в раздел "Ноды" → "Управление", выберите нужную ноду и нажмите на кнопку "Важно". В появившемся окне вы увидите иконку для копирования сертификата — скопируйте его.
- Перейдите ко второму серверу и запустите установку ноды. Когда скрипт запросит сертификат, вставьте ранее скопированный ключ.
- После завершения настройки вы увидите сообщение о том, что нода успешно подключена.
Для повышения безопасности панели в конфигурации NGINX реализован дополнительный уровень защиты от её обнаружения:
- Чтобы получить доступ к панели, необходимо перейти по ссылке следующего формата:
https://panel.example.com/auth/login?<SECRET_KEY>=<SECRET_KEY> - При таком запросе параметр ?<SECRET_KEY>=<SECRET_KEY> автоматически устанавливает в браузере специальную Cookie с именем <SECRET_KEY> и значением <SECRET_KEY>.
- Если Cookie отсутствует или URL-запрос не содержит указанного параметра, пользователь увидит либо пустую страницу, либо ошибку 404 — в зависимости от запрашиваемого пути.
Благодаря этому механизму панель остаётся скрытой от посторонних. Даже если злоумышленник попытается сканировать хост или перебирать пути, без правильного параметра и соответствующей Cookie доступ к панели будет невозможен.
- Конфигурация прокси сервера:
- Поддержка автоматического обновления конфигураций через подписку и JSON подписку с возможностью конвертации в форматы для популярных приложений.
- Настройку обратного прокси NGINX в связке с Xray.
- Обеспечение безопасности:
- Настройка SSL сертификатов Cloudflare с автоматическим обновлением для защиты соединений.
- Настройка UFW (Uncomplicated Firewall) для управления доступом.
- Отключение IPv6 для предотвращения возможных уязвимостей.
- Выбор случайного шаблона веб-сайта из массива.
- Включение BBR — улучшение производительности TCP-соединений.
Для настройки сервера запустите на нём эту команду:
bash <(curl -Ls https://raw.githubusercontent.com/eGamesAPI/remnawave-reverse-proxy/refs/heads/dev/install_remnawave.sh)
