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

Redirection de ports – Guide WireGuard

Redirection de ports

Toutes les configurations WireGuard créées avec le générateur de configuration prennent en charge la redirection de ports. Vous pouvez l'utiliser de deux façons :

  • Manuel : sur la page WireGuard, ouvrez le menu ⋮ à côté de votre configuration et choisissez Redirection de ports. Nous attribuons un port public qui redirige vers le port de votre choix sur votre appareil.
  • Automatique (NAT-PMP) : des applications comme gluetun et qBittorrent demandent elles-mêmes un port pendant la connexion. Rien à configurer sur le site.

Fonctionnement de la redirection de ports automatique

  • Nous attribuons le port public (entre 30000 et 65000). Il n'est pas possible de demander un port public précis.
  • Chaque redirection transfère le trafic TCP et UDP sur le même port public.
  • Votre application renouvelle la redirection régulièrement. Si elle cesse de la renouveler (par exemple si vous vous déconnectez), la redirection est supprimée automatiquement après environ une heure.
  • Le port attribué reste généralement le même tant que votre application le renouvelle, mais il peut changer après un redémarrage du conteneur ou une reconnexion.
  • Les redirections automatiques apparaissent sur la page WireGuard avec l'étiquette auto et sont comptées dans les 10 redirections de ports de votre compte.

gluetun

  • 1. Créez une configuration sur la page WireGuard et téléchargez le fichier .conf.
  • 2. Trouvez l'adresse IP du serveur : prenez le nom d'hôte figurant sur la ligne Endpoint de votre .conf (par exemple ca1-1.btguard.com) et résolvez-le :
    nslookup ca1-1.btguard.com
    gluetun exige une adresse IP dans VPN_ENDPOINT_IP ; il n'accepte pas les noms d'hôte.
  • 3. Utilisez ce service docker-compose en le complétant avec les valeurs de votre fichier .conf :
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. Pourquoi « protonvpn » ? gluetun nomme son code de redirection de ports NAT-PMP d'après ProtonVPN ; BTGuard utilise le même protocole standard, ce paramètre fonctionne donc tel quel.
  • 5. Démarrez le conteneur. Le journal de gluetun affiche le port attribué, qui est aussi écrit dans /tmp/gluetun/forwarded_port à l'intérieur du conteneur. Configurez l'application derrière gluetun pour qu'elle écoute sur ce port, ou utilisez la configuration gluetun + qBittorrent ci-dessous pour transmettre le port automatiquement.

gluetun + qBittorrent (recommandé)

qBittorrent ne lit pas de lui-même le fichier de port de gluetun. Utilisez la commande up de gluetun (VPN_PORT_FORWARDING_UP_COMMAND) pour transmettre le port attribué à qBittorrent chaque fois que NAT-PMP crée ou renouvelle la redirection, y compris après un redémarrage, quand le port peut changer.

  • 1. Exécutez qBittorrent dans l'espace de noms réseau de gluetun (network_mode: service:gluetun).
  • 2. Dans qBittorrent, sous Options → Interface web, activez Ignorer l'authentification pour les clients sur l'hôte local afin que gluetun puisse accéder à l'API sans identifiants.
  • 3. Ajoutez à gluetun les commandes up/down ci-dessous. Modifiez 8080 si l'interface web de qBittorrent écoute sur un autre port.
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. La commande up s'exécute chaque fois que gluetun obtient un port redirigé. Elle définit le port d'écoute de qBittorrent sur {{PORT}}, le lie à l'interface VPN et désactive le port aléatoire et l'UPnP pour que qBittorrent ne remplace pas le port attribué.
  • 5. La commande down efface le port d'écoute quand la redirection s'arrête (cela aide qBittorrent à se rétablir proprement après une déconnexion).
  • 6. Repérez le port attribué dans le journal de gluetun et vérifiez que qBittorrent affiche le même port sous Options → Connexion. La redirection apparaît aussi sur la page WireGuard avec l'étiquette auto.

qBittorrent (exécuté directement sur votre appareil)

Si WireGuard s'exécute sur votre machine sans gluetun, qBittorrent peut demander lui-même un port :

  • 1. Connectez-vous avec votre configuration WireGuard BTGuard.
  • 2. Dans Options → Avancé, réglez Interface réseau sur votre interface WireGuard pour que tout le trafic passe par le VPN.
  • 3. Dans Options → Connexion, activez Utiliser la redirection de port UPnP / NAT-PMP de mon routeur. qBittorrent demande un port automatiquement ; le port attribué apparaît dans son journal et sur la page WireGuard.

← Retour aux guides VPN