Remnawave: Полное руководство по запуску панели управления прокси-серверами
Введение: Что такое Remnawave и зачем она нужна
В экосистеме современных прокси-решений административная панель — это не просто "веб-интерфейс", а центральный узел управления бизнесом. От её выбора зависит масштабируемость, безопасность клиентов, удобство биллинга и, в конечном счёте, репутация проекта.Remnawave — это современная панель управления прокси-серверами, разработанная как ответ на ограничения существующих решений (3X-UI, Hiddify, Marzban и PasarGuard). Её ключевые отличия:
- Промышленная архитектура. Разделение на независимые компоненты: панель управления (API + веб-интерфейс) и ноды (Xray-core). Это позволяет масштабировать инфраструктуру горизонтально, добавляя новые серверы для трафика без остановки панели.
- Высокая производительность. Оптимизированный стек способен обрабатывать до 10 000 активных сессий на одной ноде при корректной настройке.
- Безопасность по умолчанию. API-first подход, изоляция компонентов, обязательный reverse proxy и строгая аутентификация между панелью и нодами.
- Экосистема. Активно развивающаяся интеграция с платёжными системами, Telegram-ботами для продажи подписок и мониторингом.
Архитектурный принцип
Remnawave состоит из двух функционально независимых частей:- Панель (Core) — управляет пользователями, конфигурациями, базой данных, предоставляет API и веб-интерфейс.
- Нода (Node) — непосредственно пропускает пользовательский трафик через Xray-core.
Важно: Для продакшена рекомендуется размещать панель управления и ноды на отдельных серверах! Совмещение компонентов на одном хосте допустимо для небольших проектов, тестовых контурах, однако в этом случае отсутствует изоляция ролей и единая точка отказа сохраняется: проблемы с нодой могут повлиять на доступность панели, а компрометация сервера затронет как трафик, так и управляющую инфраструктуру.
Минимальные и рекомендуемые ресурсы
| Компонент | Минимум | Рекомендовано (продакшен) | Примечание |
|---|---|---|---|
| Панель | 2 CPU / 2 ГБ RAM | 4 CPU / 4 ГБ RAM | БД PostgreSQL требует отдельного внимания к I/O |
| Нода | 1 CPU / 1 ГБ RAM | 2 CPU / 2 ГБ RAM | Зависит от количества одновременных подключений! |
| Диск (панель) | 20 ГБ SSD | 40+ ГБ NVMe | БД и логи растут со временем |
| Диск (нода) | 10 ГБ HDD/SSD | 20 ГБ HDD/SSD | Логи трафика при включённом логировании |
Что потребуется перед установкой
- Приобрести два и более сервера (VPS/VDS) у надёжного хостера. Рекомендуется выбирать разные дата-центры и, желательно, разные юрисдикции для панели и нод. Специально для вас мы подготовили список самых выгодных хостингов, подробнее читайте в нашей статье Выбор хостинга (VPS/VDS сервера, домены)
- Приобрести доменное имя (для панели управления, подписок, нод).
- Немного терпения и понимания базовых процессов Linux.
Для комфортной работы вам понадобится домен и минимум 3–4 поддомена. example.com — пример названия вашего домена.
Читайте отдельную статью Выбор хостинга (VPS/VDS сервера, домены)
- panel.example.com — веб-панель управления
- sub.example.com — страница подписок для клиентов
- node.example.com — основная нода (можно использовать и основной домен для Reality/SelfSteal)
- По желанию: отдельные поддомены под каждую ноду (de1.example.com, nl1.example.com и т.д.)
Способ №1: Ручная установка (по официальной документации)
Весь описанный ниже процесс продемонстрирован в видео:Установите Docker, если он еще не установлен:
Bash:
sudo curl -fsSL https://get.docker.com | sh
Создание каталога проекта
Загрузка docker-compose.yml
Загрузка .env
Bash:
mkdir /opt/remnawave && cd /opt/remnawave
Загрузка docker-compose.yml
Bash:
curl -o docker-compose.yml https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/docker-compose-prod.yml
Загрузка .env
Bash:
curl -o .env https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/.env.sample
Генерация JWT и API секретов
JWT_AUTH_SECRET и JWT_API_TOKENS_SECRET используются для аутентификации и связанных с ней функций безопасности. Сгенерируйте надёжные ключи:
Bash:
sed -i "s/^JWT_AUTH_SECRET=.*/JWT_AUTH_SECRET=$(openssl rand -hex 64)/" .env && sed -i "s/^JWT_API_TOKENS_SECRET=.*/JWT_API_TOKENS_SECRET=$(openssl rand -hex 64)/" .env
Генерация паролей
Bash:
sed -i "s/^METRICS_PASS=.*/METRICS_PASS=$(openssl rand -hex 64)/" .env && sed -i "s/^WEBHOOK_SECRET_HEADER=.*/WEBHOOK_SECRET_HEADER=$(openssl rand -hex 64)/" .env
Важно: Настоятельно рекомендуется изменить пароль PostgreSQL по умолчанию.
Изменение пароля PostgreSQL
Bash:
pw=$(openssl rand -hex 24) && sed -i "s/^POSTGRES_PASSWORD=.*/POSTGRES_PASSWORD=$pw/" .env && sed -i "s|^\(DATABASE_URL=\"postgresql://postgres:\)[^\@]*\(@.*\)|\1$pw\2|" .env
Настройка доменов
Откройте файл.env и обновите следующие переменные:- FRONT_END_DOMAIN — доменное имя, под которым будет доступна панель. Пример:
panel.yourdomain.com. - SUB_PUBLIC_DOMAIN — пока что просто укажите домен панели с
/api/subв конце. Пример:panel.yourdomain.com/api/sub.
Запуск контейнеров
Bash:
docker compose up -d && docker compose logs -f -t
Установка Reverse Proxy (обязательно)
Теперь нужно защитить панель по HTTPS и скрыть внутренний порт. Зачем нужен reverse proxy?Важно: Для корректной работы панели Remnawave необходим обратный прокси-сервер. Не предоставляйте доступ к сервисам из общедоступного интернета. Используйте только
127.0.0.1для работы с сервисами Remnawave.
- Безопасность: SSL-шифрование защищает трафик между вами и панелью.
- Скрытие порта: внешние пользователи видят только 443 (HTTPS), а не 3000.
- Дополнительная защита от атак.
Обзор
В данном руководстве используется Nginx в качестве обратного прокси для доступа к панели Remnawave. В процессе настройки необходимо:- Привязать доменное имя к серверу.
- Выпустить SSL-сертификат.
- Настроить Nginx для проксирования запросов к панели Remnawave.
Важно: Для продолжения необходим зарегистрированный домен.
Для получения SSL-сертификата рекомендуется использовать acme.sh.
После выпуска сертификата установите его для автообновления:
Теперь сертификат будет автоматически продлеваться.
Важно: Данный раздел описывает выпуск сертификата только для домена панели управления.
Установка зависимостей
Bash:
sudo apt-get install cron socat
Установка acme.sh
Замените EMAIL на ваш адрес электронной почты:
Bash:
curl https://get.acme.sh | sh -s email=EMAIL && source ~/.bashrc
Создание каталога для сертификатов
Bash:
mkdir -p /opt/remnawave/nginx && cd /opt/remnawave/nginx
Выпуск сертификата
Замените DOMAIN на ваш реальный домен.Важно: Рекомендуем не использовать доменные зоны .ru, .su и .рф, так как ZeroSSL может их не поддерживать. Порт 8443 должен быть открыт!
Bash:
acme.sh --issue --standalone \
-d 'DOMAIN' \
--key-file /opt/remnawave/nginx/privkey.key \
--fullchain-file /opt/remnawave/nginx/fullchain.pem \
--alpn \
--tlsport 8443 \
--reloadcmd "docker exec remnawave-nginx nginx -s reload"
После выпуска сертификата установите его для автообновления:
Bash:
acme.sh --install-cert \
-d 'DOMAIN' \
--key-file /opt/remnawave/nginx/privkey.key \
--fullchain-file /opt/remnawave/nginx/fullchain.pem \
--reloadcmd "docker exec remnawave-nginx nginx -s reload"
Создайте файл
/opt/remnawave/nginx/nginx.conf и замените REPLACE_WITH_YOUR_DOMAIN на ваш домен:
NGINX:
upstream remnawave {
server remnawave:3000;
}
server {
server_name REPLACE_WITH_YOUR_DOMAIN;
listen 443 ssl reuseport;
listen [::]:443 ssl reuseport;
http2 on;
location / {
proxy_http_version 1.1;
proxy_pass http://remnawave;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:
ECDHE-RSA-AES128-GCM-SHA256:
ECDHE-ECDSA-AES256-GCM-SHA384:
ECDHE-RSA-AES256-GCM-SHA384:
ECDHE-ECDSA-CHACHA20-POLY1305:
ECDHE-RSA-CHACHA20-POLY1305:
DHE-RSA-AES128-GCM-SHA256:
DHE-RSA-AES256-GCM-SHA384:
DHE-RSA-CHACHA20-POLY1305;
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;
ssl_certificate "/etc/nginx/ssl/fullchain.pem";
ssl_certificate_key "/etc/nginx/ssl/privkey.key";
ssl_trusted_certificate "/etc/nginx/ssl/fullchain.pem";
ssl_stapling on;
ssl_stapling_verify on;
resolver 1.1.1.1
1.0.0.1
8.8.8.8
8.8.4.4
208.67.222.222
208.67.220.220 valid=60s;
resolver_timeout 2s;
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_min_length 256;
gzip_types
application/atom+xml
application/geo+json
application/javascript
application/x-javascript
application/json
application/ld+json
application/manifest+json
application/rdf+xml
application/rss+xml
application/xhtml+xml
application/xml
font/eot
font/otf
font/ttf
image/svg+xml
text/css
text/javascript
text/plain
text/xml;
}
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
server_name _;
ssl_reject_handshake on;
}
Создайте файл
/opt/remnawave/nginx/docker-compose.yml:
YAML:
services:
remnawave-nginx:
image: nginx:1.28
container_name: remnawave-nginx
hostname: remnawave-nginx
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ./fullchain.pem:/etc/nginx/ssl/fullchain.pem:ro
- ./privkey.key:/etc/nginx/ssl/privkey.key:ro
restart: always
ports:
- "0.0.0.0:443:443"
networks:
- remnawave-network
networks:
remnawave-network:
name: remnawave-network
driver: bridge
external: true
Запуск контейнера Nginx
Bash:
docker compose up -d && docker compose logs -f -t
Проверка
Откройте домен в браузере. Если настройка выполнена корректно, откроется страница авторизации Remnawave. На данном этапе нужно будет установить свой пароль панели.Посмотреть вложение 1
Возможные проблемы
- Проверьте DNS-запись.
- Убедитесь, что открыты порты 443 и 8443.
- Проверьте успешность выпуска сертификата.
- Убедитесь, что контейнер
remnawave-nginxзапущен. - Проверьте существование сети
remnawave-network. - Убедитесь, что в
nginx.confуказан правильный домен.
Установка Subscription Page
Отредактируйте файл
Найдите параметр
/opt/remnawave/.env:
Bash:
cd /opt/remnawave && nano .env
SUB_PUBLIC_DOMAIN= и измените его на домен страницы подписки. Пример:
INI:
SUB_PUBLIC_DOMAIN=subscription.domain.com
После изменения перезапустите контейнер панели:Важно: Указывайте только домен без
http://илиhttps://
Bash:
cd /opt/remnawave && docker compose down remnawave && docker compose up -d && docker compose logs -f
Создайте каталог и файл
Создайте файл
В панели Remnawave создайте API-токен:
Заполните файл
Где:
docker-compose.yml:
Bash:
mkdir -p /opt/remnawave/subscription && cd /opt/remnawave/subscription && nano docker-compose.yml
YAML:
services:
remnawave-subscription-page:
image: remnawave/subscription-page:latest
container_name: remnawave-subscription-page
hostname: remnawave-subscription-page
restart: always
env_file:
- .env
ports:
- '127.0.0.1:3010:3010'
networks:
- remnawave-network
networks:
remnawave-network:
driver: bridge
external: true
Создайте файл
.env:
Bash:
mkdir -p /opt/remnawave/subscription && cd /opt/remnawave/subscription && nano .env
В панели Remnawave создайте API-токен:
Remnawave Settings → API TokensЗаполните файл
.env:
INI:
APP_PORT=3010
REMNAWAVE_PANEL_URL=http://remnawave:3000
REMNAWAVE_API_TOKEN=API_TOKEN_FROM_REMNAWAVE
- APP_PORT — порт контейнера страницы подписки.
- REMNAWAVE_PANEL_URL — адрес панели Remnawave внутри Docker-сети.
- REMNAWAVE_API_TOKEN — API-токен, созданный в панели.
Полный список параметров .env
INI:
APP_PORT=3010
### URL панели Remnawave
### Может быть:
### http://remnawave:3000
### или
### https://panel.example.com
REMNAWAVE_PANEL_URL=http://remnawave:3000
REMNAWAVE_API_TOKEN=API_TOKEN_FROM_REMNAWAVE
# Пользовательский префикс URL
# Например:
# CUSTOM_SUB_PREFIX=sub
#
# Не используйте "/" в начале и конце
CUSTOM_SUB_PREFIX=
# Поддержка ссылок Marzban
MARZBAN_LEGACY_LINK_ENABLED=false
MARZBAN_LEGACY_SECRET_KEY=
# Если используется дополнение
# "Caddy with security"
CADDY_AUTH_API_TOKEN=
Bash:
docker compose up -d && docker compose logs -f
Примеры:Важно: Remnawave и его компоненты не поддерживают работу через подкаталог. Нельзя использовать:
location /subscription { ... }Страница подписки должна открываться через отдельный домен или поддомен.
Для кастомного пути используйте параметр
CUSTOM_SUB_PREFIX.Выпуск SSL-сертификата для поддомена подписок
Bash:
acme.sh --issue --standalone \
-d 'SUBSCRIPTION_PAGE_DOMAIN' \
--key-file /opt/remnawave/nginx/subdomain_privkey.key \
--fullchain-file /opt/remnawave/nginx/subdomain_fullchain.pem \
--alpn \
--tlsport 8443 \
--reloadcmd "docker exec remnawave-nginx nginx -s reload"
Добавление конфигурации в Nginx
Откройте конфигурацию Nginx:
Bash:
cd /opt/remnawave/nginx && nano nginx.conf
NGINX:
upstream remnawave {
server remnawave:3000;
}
upstream remnawave-subscription-page {
server remnawave-subscription-page:3010;
}
SUBSCRIPTION_PAGE_DOMAIN на ваш домен):
NGINX:
server {
server_name SUBSCRIPTION_PAGE_DOMAIN;
listen 443 ssl;
listen [::]:443 ssl;
http2 on;
location / {
proxy_http_version 1.1;
proxy_pass http://remnawave-subscription-page;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
}
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:
ECDHE-RSA-AES128-GCM-SHA256:
ECDHE-ECDSA-AES256-GCM-SHA384:
ECDHE-RSA-AES256-GCM-SHA384:
ECDHE-ECDSA-CHACHA20-POLY1305:
ECDHE-RSA-CHACHA20-POLY1305:
DHE-RSA-AES128-GCM-SHA256:
DHE-RSA-AES256-GCM-SHA384:
DHE-RSA-CHACHA20-POLY1305;
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;
ssl_certificate "/etc/nginx/ssl/subdomain_fullchain.pem";
ssl_certificate_key "/etc/nginx/ssl/subdomain_privkey.key";
ssl_trusted_certificate "/etc/nginx/ssl/subdomain_fullchain.pem";
ssl_stapling on;
ssl_stapling_verify on;
resolver 1.1.1.1
1.0.0.1
8.8.8.8
8.8.4.4
208.67.222.222
208.67.220.220 valid=60s;
resolver_timeout 2s;
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_min_length 256;
gzip_types
application/atom+xml
application/geo+json
application/javascript
application/x-javascript
application/json
application/ld+json
application/manifest+json
application/rdf+xml
application/rss+xml
application/xhtml+xml
application/xml
font/eot
font/otf
font/ttf
image/svg+xml
text/css
text/javascript
text/plain
text/xml;
}
Обновление docker-compose Nginx
Добавьте новые сертификаты в разделvolumes:
YAML:
services:
remnawave-nginx:
image: nginx:1.28
container_name: remnawave-nginx
hostname: remnawave-nginx
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ./fullchain.pem:/etc/nginx/ssl/fullchain.pem:ro
- ./privkey.key:/etc/nginx/ssl/privkey.key:ro
- ./subdomain_fullchain.pem:/etc/nginx/ssl/subdomain_fullchain.pem:ro
- ./subdomain_privkey.key:/etc/nginx/ssl/subdomain_privkey.key:ro
restart: always
ports:
- '0.0.0.0:443:443'
networks:
- remnawave-network
networks:
remnawave-network:
name: remnawave-network
driver: bridge
external: true
Перезапуск Nginx
Bash:
docker compose down && docker compose up -d && docker compose logs -f
После завершения настройки страница подписки будет доступна по адресу:
Пример:
Код:
https://subdomain.domain.com/<shortUuid>
Код:
https://subscription.example.com/AbCdEf12
Страница подписки настраивается через:
Доступные возможности:
Remnawave Dashboard → Subpage BuilderДоступные возможности:
- Добавление поддержки различных VPN-клиентов.
- Изменение текста и инструкций на разных языках.
- Добавление собственного логотипа.
- Указание названия компании.
- Добавление ссылок поддержки.
- Настройка рекомендуемых приложений.
- Кастомизация внешнего вида страницы.
Установка Remnawave Node
Remnawave Node — это лёгкий контейнер, включающий в себя Xray-core.
Вставьте конфигурацию, которую скопировали из панели управления, и сохраните файл.
Добавьте volume в docker-compose панели:
После отправки конфигурации на ноду панель автоматически прочитает сертификаты и передаст их в Remnawave Node.
Пример использования сертификатов в Xray:
Важно: Панель Remnawave не содержит встроенный Xray-core, поэтому для полноценной работы необходимо установить Remnawave Node на отдельный сервер.
Если Docker ещё не установлен:
Bash:
sudo curl -fsSL https://get.docker.com | sh
Bash:
mkdir /opt/remnanode && cd /opt/remnanode
В панели управления перейдите:
Нажмите кнопку + и заполните форму создания ноды. Особое внимание обратите на поле Node Port.
Nodes → ManagementНажмите кнопку + и заполните форму создания ноды. Особое внимание обратите на поле Node Port.
После заполнения формы нажмитеЭтот порт будет использоваться Remnawave Node для получения внутренних API-запросов от панели Remnawave. В других целях данный порт не используется.
Copy docker-compose.yml. Скопированная конфигурация понадобится на следующем этапе.
Bash:
cd /opt/remnanode && nano docker-compose.yml
Bash:
docker compose up -d && docker compose logs -f -t
Вернитесь в карточку создания ноды в панели управления. Нажмите
Next, выберите нужный Config Profile, затем нажмите Create.Важно: После завершения настройки рекомендуется ограничить доступ к
NODE_PORTчерез файрвол и разрешить подключения только с IP-адреса панели Remnawave.
Можно подключить дополнительные файлы
Пример docker-compose:
Пример использования в конфигурации Xray:
geosite и geoip, смонтировав их в каталог /usr/local/share/xray/.Важно:
1. В примере используются условные названия файловgeo-zapret.datиip-zapret.dat. Реальные названия и категории будут отличаться.
2. Маршрутизация, настроенная на сервере (ноде), влияет только на серверный трафик и не затрагивает клиентские DIRECT-подключения.
3. Не монтируйте весь каталог целиком — это перезапишет стандартные geosite и geoip базы Xray. Подключайте каждый файл отдельно.
Пример docker-compose:
YAML:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
environment:
- NODE_PORT=2222
- SECRET_KEY="supersecretkey"
volumes:
- './geo-zapret.dat:/usr/local/share/xray/geo-zapret.dat'
- './ip-zapret.dat:/usr/local/share/xray/ip-zapret.dat'
Пример использования в конфигурации Xray:
JSON:
{
"routing": {
"rules": [
{
"type": "field",
"domain": [
"ext:geo-zapret.dat:zapret"
],
"inboundTag": [
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
},
{
"type": "field",
"ip": [
"ext:ip-zapret.dat:zapret"
],
"inboundTag": [
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
}
]
}
}
Для хранения логов на хостовой системе подключите директорию:
Пример секции логирования в Xray:
Создайте каталог для логов и настройте logrotate:
Содержимое файла:
Проверка конфигурации:
YAML:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
environment:
- NODE_PORT=2222
- SECRET_KEY="supersecretkey"
volumes:
- '/var/log/remnanode:/var/log/remnanode'
Пример секции логирования в Xray:
JSON:
{
"log": {
"error": "/var/log/remnanode/error.log",
"access": "/var/log/remnanode/access.log",
"loglevel": "warning"
}
}
Создайте каталог для логов и настройте logrotate:
Bash:
mkdir -p /var/log/remnanode
Bash:
sudo apt update && sudo apt install logrotate
Bash:
nano /etc/logrotate.d/remnanode
Содержимое файла:
Код:
/var/log/remnanode/*.log {
size 50M
rotate 5
compress
missingok
notifempty
copytruncate
}
Проверка конфигурации:
Bash:
logrotate -vf /etc/logrotate.d/remnanode
Важно: Обязательно настройте ротацию логов, иначе они со временем заполнят весь диск сервера.
Если в конфигурации Xray используются сертификаты, их необходимо смонтировать в контейнер панели Remnawave. Внутри контейнера предусмотрен каталогВажно: Этот раздел необходим только при использовании TLS-транспортов (например,
VLESS-Vision-TLS). Для Reality сертификаты не требуются.
/var/lib/remnawave/configs/xray/ssl/.Добавьте volume в docker-compose панели:
YAML:
remnawave:
image: remnawave/backend:latest
container_name: remnawave
hostname: remnawave
restart: always
ports:
- '127.0.0.1:3000:3000'
env_file:
- .env
networks:
- remnawave-network
volumes:
- '/opt/remnawave/nginx:/var/lib/remnawave/configs/xray/ssl'
depends_on:
remnawave-db:
condition: service_healthy
remnawave-redis:
condition: service_healthy
После отправки конфигурации на ноду панель автоматически прочитает сертификаты и передаст их в Remnawave Node.
Пример использования сертификатов в Xray:
JSON:
{
"certificates": [
{
"keyFile": "/var/lib/remnawave/configs/xray/ssl/privkey.key",
"certificateFile": "/var/lib/remnawave/configs/xray/ssl/fullchain.pem"
}
]
}
Важно: Обратите внимание на расширения файлов:
.keyи.pem. Они должны соответствовать реальным сертификатам.
Поздравляем!
Если вы дошли до этого этапа — вы установили панель, страницу подписок и ноды. Далее можно переходить к настройкам хостов и выдаче подписок клиентам!Способ №2: Установка скриптами
Если вы не хотите вручную устанавливать панель, ноды, Subscription Page, Nginx и SSL-сертификаты, можно воспользоваться готовыми автоматическими установщиками.Оба проекта являются сторонними решениями и не входят в официальную документацию Remnawave.
E-game — Remnawave Reverse Proxy
Ссылка на проект:GitHub - eGamesAPI/remnawave-reverse-proxy
Contribute to eGamesAPI/remnawave-reverse-proxy development by creating an account on GitHub.
Команда установки:
Bash:
bash <(curl -Ls https://raw.githubusercontent.com/eGamesAPI/remnawave-reverse-proxy/refs/heads/main/install_remnawave.sh)
Что устанавливает:
- Remnawave Panel
- Remnawave Node
- Subscription Page
- Nginx Reverse Proxy
- SSL-сертификаты
- UFW Firewall
- BBR-оптимизацию сети
- Маскировку трафика через SelfSteal
Режимы установки:
- Панель и нода на одном сервере
- Панель и ноды на разных серверах
Важно: Для полноценной установки рекомендуется заранее подготовить домен и несколько поддоменов. Проект поддерживает автоматическую работу с Cloudflare API и ACME-сертификатами.
Плюсы
- Максимально автоматизированная установка.
- Установка панели, ноды и подписочной страницы за один запуск.
- Автоматическая настройка Reverse Proxy.
- Автоматическая настройка SSL.
- Подходит новичкам.
- Поддерживается режим распределённой инфраструктуры.
Минусы
- Большое количество автоматических изменений в системе.
- Сложнее разбираться в настройках после установки.
- Обновления зависят от автора скрипта.
- Для понимания возникающих проблем всё равно желательно знать структуру Remnawave.
Важно: Сам автор указывает, что проект создан как образовательный пример по настройке Reverse Proxy и Nginx. Использование осуществляется на свой риск.
DigneZzZ — Remnawave Scripts
Ссылка на проект:GitHub - DigneZzZ/remnawave-scripts: Collection of automation scripts and utilities for RemnaWave project. Features deployment tools, configuration management, and workflow automation scripts to streamline development and operations
Collection of automation scripts and utilities for RemnaWave project. Features deployment tools, configuration management, and workflow automation scripts to streamline development and operations -...
Возможности проекта:
- Установка и обслуживание Remnawave.
- Установка RemnaNode.
- Мониторинг сервисов.
- Управление логами.
- Автоматическая ротация логов.
- Дополнительные сетевые инструменты.
- Интеграция с WARP.
- Интеграция с Tor.
- Интеграция с NetBird VPN.
Примеры команд мониторинга:
Bash:
remnawave status
remnanode status
selfsteal status
remnawave logs --follow
docker stats
Плюсы
- Более гибкий подход.
- Большой набор дополнительных инструментов.
- Удобное сопровождение после установки.
- Интеграция с WARP и NetBird.
- Развитая система логирования и мониторинга.
Минусы
- Требует чуть большего понимания инфраструктуры.
- Ориентирован не только на установку, но и на дальнейшее администрирование.
- Новичкам может показаться более сложным.
Сравнение скриптов
| Критерий | E-game | DigneZzZ |
|---|---|---|
| Простота установки | ★★★★★ | ★★★★☆ |
| Автоматизация | ★★★★★ | ★★★★☆ |
| Гибкость настройки | ★★★☆☆ | ★★★★★ |
| Подходит новичкам | ★★★★★ | ★★★★☆ |
| Дополнительные инструменты | ★★★☆☆ | ★★★★★ |
| Мониторинг и обслуживание | ★★★☆☆ | ★★★★★ |
Что выбрать?
- Если нужна максимально простая установка "нажал кнопку — получил готовую панель" — выбирайте E-game.
- Если нужен набор инструментов для дальнейшего администрирования, мониторинга, работы с WARP, Tor и NetBird — выбирайте DigneZzZ.
- Для первого знакомства с Remnawave проще начать с E-game.
- Для долгосрочного сопровождения инфраструктуры интереснее выглядит набор скриптов DigneZzZ.
Последнее редактирование: