Aller au contenu principal

Remnawave Node

Remnawave Node est un conteneur léger qui inclut Xray-core.

remarque

Remnawave Panel n'inclut pas Xray-core, vous devez donc installer Remnawave Node sur un serveur séparé pour utiliser toutes les fonctionnalités de Remnawave.

Installer Docker

Installez Docker s'il n'est pas encore installé.

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

Étape 1 — Créer le répertoire du projet

Créer le répertoire du projet
mkdir /opt/remnanode && cd /opt/remnanode

Étape 2 - Ajouter un Node

Accédez à Nodes -> Management et cliquez sur le bouton + pour ajouter un nouveau nœud.

Remplissez le formulaire.

Faites attention au champ Node Port. Il sera utilisé par Remnawave Node pour écouter les requêtes API internes de Remnawave Panel. Il ne sera pas utilisé autrement.

Cliquez sur le bouton Copy docker-compose.yml pour copier la configuration dans votre presse-papiers.

Création du Node

Étape 3 — Créer le fichier docker-compose.yml

Créer le fichier docker-compose.yml
cd /opt/remnanode && nano docker-compose.yml

Collez la configuration depuis le presse-papiers et sauvegardez.

Étape 4 — Démarrer les conteneurs

Démarrez les conteneurs en exécutant la commande suivante :

Démarrer les conteneurs
docker compose up -d && docker compose logs -f -t

Étape 5 - Terminer

Dans la carte de création de Node, cliquez sur Next, sélectionnez le Config Profile souhaité, puis cliquez sur le bouton Create.

Note importante

N'oubliez pas de fermer NODE_PORT dans le pare-feu du nœud uniquement pour l'IP du panel.

Utilisation avancée

Chargement de fichiers geosite et geoip modifiés

Note importante
  1. Cet exemple utilise des noms de substitution pour les fichiers *-zapret.dat et les catégories :zapret. Les noms de fichiers et catégories réels seront différents.
  2. Le routage configuré sur le serveur (nœud) contrôle le trafic côté serveur et n'affectera pas les connexions DIRECT du client. Pour gérer le routage du trafic client, configurez le routage côté client.

Vous pouvez ajouter des fichiers geosite et geoip supplémentaires en les montant dans le répertoire /usr/local/share/xray/ à l'intérieur du conteneur.

attention

Ne montez pas le dossier entier, cela écrasera les fichiers geosite et geoip Xray par défaut. Montez plutôt chaque fichier séparément.

Ajoutez ce qui suit au fichier docker-compose.yml :

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'

Utilisation dans la configuration Xray :

  "routing": {
"rules": [
// Autres règles
{
"type": "field",
"domain": [ // Appel du fichier geosite
"ext:geo-zapret.dat:zapret"
],
"inboundTag": [ // Optionnel
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
},
{
"type": "field",
"ip": [ // Appel du fichier geoip
"ext:ip-zapret.dat:zapret"
],
"inboundTag": [ // Optionnel
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
}
// Autres règles
]
}

Journaux du Node

Vous pouvez accéder aux journaux du Node en les montant dans votre système de fichiers hôte.

attention

Vous devez configurer la rotation des journaux, sinon les journaux rempliront votre disque !

Ajoutez ce qui suit au fichier docker-compose.yml :

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'

Utilisation dans la configuration Xray :

  "log": {
"error": "/var/log/remnanode/error.log",
"access": "/var/log/remnanode/access.log",
"loglevel": "warning"
}

Sur le serveur hébergeant le nœud, créez le dossier /var/log/remnanode en exécutant :

mkdir -p /var/log/remnanode

Installez logrotate (s'il n'est pas déjà installé) :

sudo apt update && sudo apt install logrotate

Créez un fichier de configuration logrotate :

nano /etc/logrotate.d/remnanode

Collez la configuration logrotate suivante pour RemnaNode :

/var/log/remnanode/*.log {
size 50M
rotate 5
compress
missingok
notifempty
copytruncate
}

Exécutez logrotate pour tester la configuration :

logrotate -vf /etc/logrotate.d/remnanode

Certificat SSL XRay pour Node

danger

Cette étape est nécessaire si vous implémentez le transport TLS, par exemple 'VLESS-Vision-TLS'. Pour le transport Reality, ce n'est pas requis.

Si vous utilisez des certificats pour votre configuration Xray, vous devez les monter dans le panel.

info

Montez le dossier en utilisant les volumes Docker et référencez le chemin interne dans votre configuration. À l'intérieur du conteneur, il existe un répertoire dédié (vide) pour les certificats : /var/lib/remnawave/configs/xray/ssl/

Ajoutez ce qui suit au fichier 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
info

Lorsque le Panel pousse la configuration vers le Node, il lira automatiquement les fichiers montés et enverra les certificats au Node.

Utilisation dans la configuration Xray :

  "certificates": [
{
"keyFile": "/var/lib/remnawave/configs/xray/ssl/privkey.key",
"certificateFile": "/var/lib/remnawave/configs/xray/ssl/fullchain.pem"
// Autres champs
}
]
attention

Faites attention aux extensions .key et .pem.