Separater Server
Die Installation auf einem separaten Server bedeutet, dass Sie die Abonnementseite auf einem anderen Server als dem Remnawave Panel installieren.
Schritt 1 - .env-Datei vorbereiten
Nehmen Sie diese Änderungen auf dem Server vor, auf dem Remnawave Panel installiert ist.
Bearbeiten Sie die Datei /opt/remnawave/.env und ändern Sie SUB_PUBLIC_DOMAIN auf den Domänennamen Ihrer Abonnementseite.
cd /opt/remnawave && nano .env
Ändern Sie SUB_PUBLIC_DOMAIN auf den Domänennamen Ihrer Abonnementseite. Der Domänenname muss ohne http oder https angegeben werden.
SUB_PUBLIC_DOMAIN=subscription.domain.com
Vergessen Sie nicht, den Remnawave Panel-Container neu zu starten:
cd /opt/remnawave && docker compose down remnawave && docker compose up -d && docker compose logs -f
Schritt 2 - docker-compose.yml-Datei erstellen
Dieser Schritt und die folgenden Schritte müssen auf einem anderen Server ausgeführt werden!
Stellen Sie sicher, dass Docker auf dem Server installiert ist, auf dem Sie die Abonnementseite installieren werden.
mkdir -p /opt/remnawave/subscription && cd /opt/remnawave/subscription && nano docker-compose.yml
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:
name: remnawave-network
driver: bridge
external: false
Erstellen Sie nun die .env-Datei:
mkdir -p /opt/remnawave/subscription && cd /opt/remnawave/subscription && nano .env
Erstellen Sie einen API-Token im Remnawave-Dashboard. Remnawave-Einstellungen → API-Tokens.
Fügen Sie den folgenden Inhalt in die .env-Datei ein:
APP_PORT=3010
REMNAWAVE_PANEL_URL=https://remnawave.panel.com
REMNAWAVE_API_TOKEN=API_TOKEN_FROM_REMNAWAVE
Ersetzen Sie remnawave.panel.com durch Ihren Panel-Domänennamen.
Vollständige .env-Datei-Referenz
APP_PORT=3010
### Remnawave Panel URL, kann http://remnawave:3000 oder https://panel.example.com sein
REMNAWAVE_PANEL_URL=https://panel.example.com
REMNAWAVE_API_TOKEN=API_TOKEN_FROM_REMNAWAVE
# Unter benutzerdefiniertem Stammpfad bereitstellen, z.B.: CUSTOM_SUB_PREFIX=sub
# Kein / am Anfang/Ende
CUSTOM_SUB_PREFIX=
# Marzban-Links unterstützen
MARZBAN_LEGACY_LINK_ENABLED=false
MARZBAN_LEGACY_SECRET_KEY=
# Wenn Sie das Addon "Caddy with security" verwenden, können Sie hier den X-Api-Key angeben.
CADDY_AUTH_API_TOKEN=
# Wenn Sie Cloudflare Zero Trust zum Schutz Ihres Panels verwenden, nutzen Sie diese Variablen, um die Sicherheit zu umgehen.
CLOUDFLARE_ZERO_TRUST_CLIENT_ID=
CLOUDFLARE_ZERO_TRUST_CLIENT_SECRET=
Schritt 3 - Container starten
docker compose up -d && docker compose logs -f
Schritt 4 - Reverse Proxy konfigurieren
Remnawave und seine Komponenten unterstützen keine Bereitstellung unter einem Unterpfad. (z.B. location /subscription {)
Es muss unter dem Stammpfad einer Domain oder Subdomain bereitgestellt werden.
Für einen benutzerdefinierten Pfad können Sie den Parameter CUSTOM_SUB_PREFIX verwenden.
Caddy
Caddy-Konfiguration
Erstellen Sie eine Datei namens Caddyfile im Verzeichnis /opt/remnawave/caddy.
mkdir -p /opt/remnawave/caddy && cd /opt/remnawave/caddy && nano Caddyfile
Fügen Sie die folgende Konfiguration ein.
Bitte ersetzen Sie REPLACE_WITH_YOUR_DOMAIN durch den Domänennamen Ihrer Abonnementseite.
Überprüfen Sie die Konfiguration unten und achten Sie auf rot markierte Zeilen.
https://SUBSCRIPTION_PAGE_DOMAIN {
reverse_proxy * http://remnawave-subscription-page:3010
}
:443 {
tls internal
respond 204
}
Bitte ersetzen Sie SUBSCRIPTION_PAGE_DOMAIN durch Ihren Domänennamen.
Überprüfen Sie die Konfiguration unten und achten Sie auf grün markierte Zeilen.
docker-compose.yml erstellen
Erstellen Sie eine docker-compose.yml-Datei im Verzeichnis /opt/remnawave/caddy.
cd /opt/remnawave/caddy && nano docker-compose.yml
Fügen Sie die folgende Konfiguration ein.
services:
caddy:
image: caddy:2.9
container_name: 'caddy'
hostname: caddy
restart: always
ports:
- '0.0.0.0:443:443'
- '0.0.0.0:80:80'
networks:
- remnawave-network
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy-ssl-data:/data
networks:
remnawave-network:
name: remnawave-network
driver: bridge
external: true
volumes:
caddy-ssl-data:
driver: local
external: false
name: caddy-ssl-data
Container starten
docker compose up -d && docker compose logs -f -t
Schritt 5 - Verwendung
Die Abonnementseite ist unter https://subdomain.panel.com/<shortUuid> verfügbar.
Abonnementseite konfigurieren (optional)
Sie können die Abonnementseite im Subpage Builder im Remnawave-Dashboard anpassen. Dies ermöglicht Ihnen:
- Unterstützung für verschiedene VPN-Apps hinzufügen
- Text und Anweisungen in mehreren Sprachen anpassen
- Eigenes Branding hinzufügen (Logo, Firmenname, Support-Links)
- Konfigurieren, welche Apps als „empfohlen" angezeigt werden