Пошаговое руководство по установке Remnawave

Установка панели Remnawave

Панель Remnawave — основной компонент Remnawave. Используется для управления пользователями, узлами, подписками и другими функциями.

Варианты установки

Как всегда, есть два варианта установки - ручной и автоматический (в т.ч. полуавтоматический) т.е. скриптами.

Установка скриптами

Установка скриптом от DigneZzZ

  • Устанавливается только сам Remnawave + Remnawave Subscription.
  • Полная свобода в установки и настройке обратного прокси.

Репозиторий:

Скрипт установки:
bash <(curl -sL https://github.com/DigneZzZ/remnawave-scripts/raw/main/remnawave.sh) @ install

Установка скриптом от eGames:

Репозиторий:

Скрипт установки:
bash <(curl -Ls https://raw.githubusercontent.com/eGamesAPI/remnawave-reverse-proxy/refs/heads/main/install_remnawave.sh)
Что умеет делать
  • Поддержка автоматических обновлений конфигурации через подписку
  • Настройка обратного прокси NGINX в сочетании с Xray
  • SSL-сертификаты Cloudflare с автоматическим продлением
  • Настройка UFW для управления доступом
  • Оптимизация BBR для TCP-соединений

Ручная установка

Шаг 0. Установка Docker на сервере

Для установки воспользуйтесь официальным скриптом установки:

curl -fsSL https://get.docker.com | sh

Шаг 1. Загрузка необходимых файлов


mkdir /opt/remnawave && cd /opt/remnawave

Загрузите файлы docker-compose.yml и .env.sample с помощью следующих команд:


curl -o docker-compose.yml https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/docker-compose-prod.yml


curl -o .env https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/.env.sample

Шаг 2. Настройка файла .env

Переменные JWT_AUTH_SECRET и JWT_API_TOKENS_SECRET используются для аутентификации и других целей.

Сгенерируйте секретные ключи командой:


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


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:


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

  • SUB_PUBLIC_DOMAIN

FRONT_END_DOMAIN — доменное имя, по которому будет доступна панель. Укажите ваш домен, например: panel.yourdomain.com.

SUB_PUBLIC_DOMAIN — укажите домен панели, добавив /api/sub в конец.

Пример: panel.yourdomain.com/api/sub.

Заметка:

Изменение переменных окружения

Дополнительная информация о переменных окружения доступна на странице Переменные окружения.

Шаг 3. Запуск контейнеров

Запустите контейнеры командой:


docker compose up -d && docker compose logs -f -t

Через несколько секунд вы увидите следующий вывод:

Следующие шаги

Предупреждение:

Для корректной работы панели Remnawave требуется обратный прокси.

Не открывайте сервисы Remnawave в публичный доступ; используйте только 127.0.0.1 для сервисов Remnawave.

Теперь можно перейти к установке обратного прокси: