Deutsch
DeutschEnglishEspañolFrançaisРусский

Portweiterleitung – Anleitung für WireGuard

Portweiterleitung

Jede mit dem Konfigurationsgenerator erstellte WireGuard-Konfiguration unterstützt Portweiterleitung. Es gibt zwei Möglichkeiten, sie zu nutzen:

  • Manuell: Öffnen Sie auf der WireGuard-Seite das Menü ⋮ neben Ihrer Konfiguration und wählen Sie Portweiterleitung. Wir weisen einen öffentlichen Port zu, der an den von Ihnen gewählten Port auf Ihrem Gerät weiterleitet.
  • Automatisch (NAT-PMP): Apps wie gluetun und qBittorrent fordern während der Verbindung selbst einen Port an. Auf der Website ist nichts zu konfigurieren.

So funktioniert die automatische Portweiterleitung

  • Wir weisen den öffentlichen Port zu (zwischen 30000 und 65000). Die Anforderung eines bestimmten öffentlichen Ports wird nicht unterstützt.
  • Jede Zuordnung leitet TCP und UDP über denselben öffentlichen Port weiter.
  • Ihre App erneuert die Zuordnung regelmäßig. Wird sie nicht mehr erneuert (zum Beispiel, weil Sie die Verbindung trennen), wird die Weiterleitung nach etwa einer Stunde automatisch entfernt.
  • Der zugewiesene Port bleibt in der Regel gleich, solange Ihre App ihn erneuert, er kann sich aber ändern, wenn der Container neu gestartet oder die Verbindung neu aufgebaut wird.
  • Automatische Weiterleitungen erscheinen auf der WireGuard-Seite mit dem Tag auto und zählen zu den 10 Portweiterleitungen Ihres Kontos.

gluetun

  • 1. Erstellen Sie auf der WireGuard-Seite eine Konfiguration und laden Sie die .conf-Datei herunter.
  • 2. Ermitteln Sie die IP-Adresse des Servers: Nehmen Sie den Hostnamen aus der Zeile Endpoint Ihrer .conf-Datei (zum Beispiel ca1-1.btguard.com) und lösen Sie ihn auf:
    nslookup ca1-1.btguard.com
    gluetun benötigt in VPN_ENDPOINT_IP eine IP-Adresse; Hostnamen werden nicht akzeptiert.
  • 3. Verwenden Sie diesen docker-compose-Dienst und tragen Sie die Werte aus Ihrer .conf-Datei ein:
services:
  gluetun:
    image: qmcgaw/gluetun:latest
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    environment:
      - VPN_SERVICE_PROVIDER=custom
      - VPN_TYPE=wireguard
      - VPN_PORT_FORWARDING=on
      - VPN_PORT_FORWARDING_PROVIDER=protonvpn
      # values from your BTGuard .conf file:
      - WIREGUARD_PRIVATE_KEY=    # PrivateKey under [Interface]
      - WIREGUARD_ADDRESSES=      # Address under [Interface]
      - VPN_DNS_ADDRESS=          # DNS under [Interface]
      - WIREGUARD_PUBLIC_KEY=     # PublicKey under [Peer]
      - VPN_ENDPOINT_IP=          # IP of the Endpoint host (step 2)
      - VPN_ENDPOINT_PORT=444     # number after the : in Endpoint
  • 4. Warum „protonvpn“? gluetun benennt seinen NAT-PMP-Code für die Portweiterleitung nach ProtonVPN; BTGuard verwendet dasselbe Standardprotokoll, daher funktioniert diese Einstellung unverändert.
  • 5. Starten Sie den Container. Das gluetun-Log zeigt den zugewiesenen Port an, außerdem wird er im Container in /tmp/gluetun/forwarded_port gespeichert. Konfigurieren Sie die Anwendung hinter gluetun so, dass sie auf diesem Port lauscht, oder verwenden Sie die unten beschriebene Einrichtung mit gluetun + qBittorrent, um den Port automatisch zu übergeben.

gluetun + qBittorrent (empfohlen)

qBittorrent liest die Port-Datei von gluetun nicht selbstständig. Verwenden Sie den Up-Befehl von gluetun (VPN_PORT_FORWARDING_UP_COMMAND), um den zugewiesenen Port jedes Mal an qBittorrent zu übergeben, wenn NAT-PMP die Zuordnung setzt oder erneuert – auch nach einem Neustart, wenn sich der Port ändern kann.

  • 1. Führen Sie qBittorrent im Netzwerk-Namespace von gluetun aus (network_mode: service:gluetun).
  • 2. Aktivieren Sie in qBittorrent unter Optionen → Weboberfläche die Option Authentifizierung für Clients auf localhost umgehen, damit gluetun ohne Anmeldedaten auf die API zugreifen kann.
  • 3. Fügen Sie gluetun die unten stehenden Up/Down-Befehle hinzu. Ändern Sie 8080, falls Ihre qBittorrent-Weboberfläche auf einem anderen Port lauscht.
services:
  gluetun:
    image: qmcgaw/gluetun:latest
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    ports:
      - 8080:8080/tcp   # qBittorrent Web UI (optional, for your browser)
    environment:
      - VPN_SERVICE_PROVIDER=custom
      - VPN_TYPE=wireguard
      - VPN_PORT_FORWARDING=on
      - VPN_PORT_FORWARDING_PROVIDER=protonvpn
      - VPN_PORT_FORWARDING_UP_COMMAND=/bin/sh -c 'wget -O- -nv --retry-connrefused --post-data "json={\"listen_port\":{{PORT}},\"current_network_interface\":\"{{VPN_INTERFACE}}\",\"random_port\":false,\"upnp\":false}" http://127.0.0.1:8080/api/v2/app/setPreferences'
      - VPN_PORT_FORWARDING_DOWN_COMMAND=/bin/sh -c 'wget -O- -nv --retry-connrefused --post-data "json={\"listen_port\":0,\"current_network_interface\":\"lo\"}" http://127.0.0.1:8080/api/v2/app/setPreferences'
      # values from your BTGuard .conf file:
      - WIREGUARD_PRIVATE_KEY=
      - WIREGUARD_ADDRESSES=
      - VPN_DNS_ADDRESS=
      - WIREGUARD_PUBLIC_KEY=
      - VPN_ENDPOINT_IP=
      - VPN_ENDPOINT_PORT=444

  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    network_mode: service:gluetun
    depends_on:
      - gluetun
    environment:
      - PUID=1000
      - PGID=1000
      - WEBUI_PORT=8080
    volumes:
      - ./qbittorrent/config:/config
      - ./downloads:/downloads
  • 4. Der Up-Befehl wird ausgeführt, sobald gluetun einen weitergeleiteten Port erhält. Er setzt den Listen-Port von qBittorrent auf {{PORT}}, bindet ihn an die VPN-Schnittstelle und deaktiviert zufällige Ports / UPnP, damit qBittorrent die Zuweisung nicht überschreibt.
  • 5. Der Down-Befehl setzt den Listen-Port zurück, wenn die Weiterleitung endet (damit sich qBittorrent nach einer Verbindungstrennung sauber erholt).
  • 6. Prüfen Sie im gluetun-Log den zugewiesenen Port und vergewissern Sie sich, dass qBittorrent unter Optionen → Verbindung denselben Port anzeigt. Die Weiterleitung erscheint außerdem auf der WireGuard-Seite mit dem Tag auto.

qBittorrent (direkt auf Ihrem Gerät)

Wenn WireGuard ohne gluetun direkt auf Ihrem Host läuft, kann qBittorrent selbst einen Port anfordern:

  • 1. Stellen Sie die Verbindung mit Ihrer BTGuard-WireGuard-Konfiguration her.
  • 2. Setzen Sie unter Optionen → Erweitert die Option Netzwerkschnittstelle auf Ihre WireGuard-Schnittstelle, damit der gesamte Datenverkehr über das VPN läuft.
  • 3. Aktivieren Sie unter Optionen → Verbindung die Option UPnP / NAT-PMP Portweiterleitung des Routers verwenden. qBittorrent fordert automatisch einen Port an; der zugewiesene Port erscheint im Log und auf der WireGuard-Seite.

← Zurück zu den VPN-Anleitungen