Zum Hauptinhalt springen

Remnawave Node

Remnawave Node ist ein leichtgewichtiger Container, der Xray-core enthält.

hinweis

Remnawave Panel enthält kein Xray-core, daher müssen Sie Remnawave Node auf einem separaten Server installieren, um alle Funktionen von Remnawave zu nutzen.

Docker installieren

Installieren Sie Docker, falls noch nicht installiert.

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

Schritt 1 — Projektverzeichnis erstellen

Projektverzeichnis erstellen
mkdir /opt/remnanode && cd /opt/remnanode

Schritt 2 - Node hinzufügen

Navigieren Sie zu Nodes -> Management und klicken Sie auf die Schaltfläche +, um einen neuen Node hinzuzufügen.

Füllen Sie das Formular aus.

Achten Sie auf das Feld Node Port. Es wird von Remnawave Node verwendet, um interne API-Anfragen von Remnawave Panel zu empfangen. Es wird auf keine andere Weise verwendet.

Klicken Sie auf die Schaltfläche Copy docker-compose.yml, um die Konfiguration in die Zwischenablage zu kopieren.

Node erstellen

Schritt 3 — docker-compose.yml-Datei erstellen

docker-compose.yml-Datei erstellen
cd /opt/remnanode && nano docker-compose.yml

Fügen Sie die Konfiguration aus der Zwischenablage ein und speichern Sie.

Schritt 4 — Container starten

Starten Sie die Container mit folgendem Befehl:

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

Schritt 5 - Abschließen

Klicken Sie in der Node-Erstellungskarte auf Next, wählen Sie das gewünschte Config Profile und klicken Sie anschließend auf die Schaltfläche Create.

Wichtiger Hinweis

Bitte denken Sie daran, den NODE_PORT in der Node-Firewall nur für die Panel-IP zu schließen.

Erweiterte Verwendung

Laden von geänderten geosite- und geoip-Dateien

Wichtiger Hinweis
  1. Dieses Beispiel verwendet Platzhalternamen für die *-zapret.dat-Dateien und die :zapret-Kategorien. Die tatsächlichen Dateinamen und Kategorien werden unterschiedlich sein.
  2. Das auf dem Server (Node) konfigurierte Routing steuert den serverseitigen Datenverkehr und beeinflusst keine DIRECT-Verbindungen des Clients. Um das Client-Datenverkehrs-Routing zu verwalten, konfigurieren Sie das Routing auf der Client-Seite.

Sie können zusätzliche geosite- und geoip-Dateien hinzufügen, indem Sie sie in das Verzeichnis /usr/local/share/xray/ im Container einbinden.

vorsicht

Binden Sie nicht den gesamten Ordner ein, da dies die Standard-Xray-geosite- und geoip-Dateien überschreibt. Binden Sie stattdessen jede Datei separat ein.

Fügen Sie Folgendes zur docker-compose.yml-Datei hinzu:

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'

Verwendung in der Xray-Konfiguration:

  "routing": {
"rules": [
// Andere Regeln
{
"type": "field",
"domain": [ // Aufruf der geosite-Datei
"ext:geo-zapret.dat:zapret"
],
"inboundTag": [ // Optional
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
},
{
"type": "field",
"ip": [ // Aufruf der geoip-Datei
"ext:ip-zapret.dat:zapret"
],
"inboundTag": [ // Optional
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
}
// Andere Regeln
]
}

Node-Protokolle

Sie können auf Node-Protokolle zugreifen, indem Sie sie in Ihr Host-Dateisystem einbinden.

vorsicht

Sie müssen Log-Rotation einrichten, sonst füllen die Protokolle Ihre Festplatte!

Fügen Sie Folgendes zur docker-compose.yml-Datei hinzu:

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'

Verwendung in der Xray-Konfiguration:

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

Erstellen Sie auf dem Server, der den Node hostet, den Ordner /var/log/remnanode mit folgendem Befehl:

mkdir -p /var/log/remnanode

Installieren Sie logrotate (falls noch nicht installiert):

sudo apt update && sudo apt install logrotate

Erstellen Sie eine logrotate-Konfigurationsdatei:

nano /etc/logrotate.d/remnanode

Fügen Sie die folgende logrotate-Konfiguration für RemnaNode ein:

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

Führen Sie logrotate aus, um die Konfiguration zu testen:

logrotate -vf /etc/logrotate.d/remnanode

XRay SSL-Zertifikat für Node

gefahr

Dieser Schritt ist erforderlich, wenn Sie TLS-Transport implementieren, z.B. 'VLESS-Vision-TLS'. Für Reality-Transport ist dies nicht erforderlich.

Wenn Sie Zertifikate für Ihre Xray-Konfiguration verwenden, müssen Sie diese in den Container einbinden.

info

Binden Sie den Ordner mit Docker-Volumes ein und verweisen Sie in Ihrer Konfiguration auf den internen Pfad. Im Container gibt es ein dediziertes (leeres) Verzeichnis für Zertifikate: /var/lib/remnawave/configs/xray/ssl/

Fügen Sie Folgendes zur docker-compose.yml-Datei hinzu:

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

Wenn das Panel die Konfiguration an den Node überträgt, liest es automatisch die eingebundenen Dateien und sendet die Zertifikate an den Node.

Verwendung in der Xray-Konfiguration:

  "certificates": [
{
"keyFile": "/var/lib/remnawave/configs/xray/ssl/privkey.key",
"certificateFile": "/var/lib/remnawave/configs/xray/ssl/fullchain.pem"
// Andere Felder
}
]
vorsicht

Achten Sie auf die .key- und .pem-Erweiterungen.