Установка узла Remnawave
Remnawave Node — это легковесный контейнер с встроенным Xray-core для подключения к панели Remnawave.
Панель Remnawave не содержит Xray-core внутри, поэтому для полноценного использования Remnawave необходимо установить Remnawave Node на отдельном сервере.
Установка скриптом
Для вашей простоты и удобства, вы можете воспользоваться скриптом установки ноды:
bash <(curl -Ls https://github.com/DigneZzZ/remnawave-scripts/raw/main/remnanode.sh) @ install
В результате установки у вас будет CLI интерфейс управления вызываемый командой remnanode
Скриншот
Ручная установка
Шаг 1. Создание директории проекта
mkdir /opt/remnanode && cd /opt/remnanode
Шаг 2. Настройка файла .env
nano .env
SSL_CERT
можно найти в главной панели во вкладке Nodes, на странице Management, после нажатия кнопки Create new node. APP_PORT
может быть настроен по желанию, убедитесь, что порт не используется другими сервисами.
APP_PORT=2222
SSL_CERT=CERT_FROM_MAIN_PANEL
Шаг 3. Создание файла docker-compose.yml
nano docker-compose.yml
Вставьте следующее содержимое в файл:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
env_file:
- .env
Шаг 4. Запуск контейнеров
Запустите контейнеры командой:
docker compose up -d && docker compose logs -f -t
Расширенное использование
Файлы GeoSite
Вы можете подключить дополнительные файлы geosite в директорию /usr/local/share/xray/
в контейнере.
Не монтируйте всю папку целиком. Иначе вы перезапишете стандартные файлы geosite от Xray. Монтируйте каждый файл по отдельности.
Добавьте следующие строки в файл docker-compose.yml
:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
env_file:
- .env
volumes:
- './zapret.dat:/usr/local/share/xray/zapret.dat'
Использование в конфигурации xray:
"routing": {
"rules": [
// Другие правила
{
"type": "field",
"domain": [
"ext:zapret.dat:zapret"
],
"inboundTag": [ // Опционально
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
}
// Другие правила
]
}
Логи узла
Вы можете получить доступ к логам узла, смонтировав их в файловую систему хоста.
Вы обязательно должны настроить ротацию логов, иначе они заполнят весь диск!
Добавьте следующие строки в файл docker-compose.yml
:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
env_file:
- .env
volumes:
- '/var/log/remnanode:/var/log/remnanode'
Использование в конфигурации xray:
"log": {
"error": "/var/log/remnanode/error.log",
"access": "/var/log/remnanode/access.log",
"loglevel": "warning"
}
На сервере, где размещен узел, создайте папку /var/log/remnanode
:
mkdir -p /var/log/remnanode
Установите logrotate (если еще не установлен):
sudo apt update && sudo apt install logrotate
Создайте файл конфигурации logrotate:
nano /etc/logrotate.d/remnanode
Вставьте следующую конфигурацию logrotate для RemnaNode:
/var/log/remnanode/*.log {
size 50M
rotate 5
compress
missingok
notifempty
copytruncate
}
Запустите logrotate вручную для тестирования:
logrotate -vf /etc/logrotate.d/remnanode
SSL-сертификаты XRay для узла
Если вы используете сертификаты для конфигурации XRay, необходимо смонтировать их в панель.
Монтируйте папку через Docker volumes, а в конфигурации ссылайтесь на внутренний путь.
Внутри контейнера есть специальная (пустая) папка для сертификатов:
/var/lib/remnawave/configs/xray/ssl/
Добавьте следующие строки в файл docker-compose.yml
:
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
Когда панель отправляет конфигурацию на узел, она автоматически читает смонтированные файлы и отправляет сертификаты на узел.
Использование в конфигурации XRay:
"certificates": [
{
"keyFile": "/var/lib/remnawave/configs/xray/ssl/privkey.key",
"certificateFile": "/var/lib/remnawave/configs/xray/ssl/fullchain.pem"
// Другие поля
}
]
Обратите внимание на расширения .key и .pem.