Petite démonstration via notre serveur de téléchargements créé dans le tuto correspondant
Connectez-vous via Putty à votre serveur

Tapez la commande suivante et exécutez-la
Code : Tout sélectionner
curl ipinfo.io
Si vous recevez un message d'erreur à propos de curl qui n'est pas disponible, il suffit de l'installer via la commande suivante :
Code : Tout sélectionner
apt install curl -y
Intéressons-nous maintenant aux applications qui tournent sous Docker, en prenant par exemple qBittorrent. Toujours sous Putty, lancez la commande suivante afin de vous connecter dans l'environnement dédié à qBittorrent par Docker (remplacez qbittorrent par le nom du conteneur Docker auquel vous désirez vous connecter)...
Code : Tout sélectionner
docker exec -it qbittorrent shCode : Tout sélectionner
curl ipinfo.io
Cette information est également visible directement dans l'interface de qBittorrent si on l'active pour qu'elle s'affiche dans la barre d'état (cachée, mais c'est bien la même IP que celle retournée dans Putty)

Nous allons donc installer une nouvelle application dans Docker, Gluetun, qui va nous permettre de nous connecter à notre fournisseur VPN (liste des compatibles ici).
Les étapes à suivre :
- créer une nouvelle connexion pour notre serveur chez notre fournisseur
- rediriger les ports utilisés par nos applications dans Gluetun
- dire aux applications d'utiliser Gluetun
Dans les paramètres de votre compte CyberGhost, cliquez sur VPN...

...et cliquez sur le bouton Configurer l'appareil de la Configuration manuelle dans la zone Configuration avancée

Choisissez Open VPN comme protocole, le pays de votre choix (Kazakhstan dans mon exemple) ainsi que Premium Servers comme Groupe de serveurs. Donnez un nom à votre appareil, et cliquez sur Sauvegarder la Configuration

Votre nouvel appareil apparaîtra maintenant dans la liste des appareils configurés. Cliquez sur Afficher...

... pour copier votre login et votre mot de passe. Cliquez également sur Configuration de téléchargement pour récupérer les fichiers de configuration nécessaires.

Comme nous l'avions fait lors de la création des applications Docker précédentes, nous allons maintenant créer un répertoire gluetun dans le dossier partagé configs de façon à garder la même cohérence de centraliser tout au même endroit

Ouvrez maintenant l'archive ZIP récupérée chez votre fournisseur VPN, et décompressez les fichiers dans le répertoire nouvellement créé (donc logiquement \\VOTRE_SERVEUR\configs\gluetun)

Maintenant, nous allons ajouter un container Docker pour Gluetun et y définir dans un premier temps les ports utilisés par qBittorrent. Et dans le script de qBittorrent, nous allons supprimer les ports et rediriger l'application vers Gluetun.
Commençons par éditer le script qBittorrent existant. Allez dans Services -> Compose -> Files, sélectionnez l'application qbittorent et cliquez sur la flèche vers le bas en haut pour l'éteindre. Elle passera en statut Down

Toujours avec l'application qbittorent sélectionnée, cliquez maintenant sur le crayon de la barre de menu afin de l'éditer

Sélectionnez les 4 lignes en rapport avec les ports, et coupez/collez-les dans un bloc-notes.

Insérez la ligne suivante (l'endroit n'a normalement pas d'importance) et cliquez sur Enregistrer
Code : Tout sélectionner
network_mode: container:gluetun
Copiez le code suivant dans votre bloc-notes en y insérant les informations relatives à votre fournisseur VPN (instructions pour chacun ici). Pour rappel, l'exemple ci-dessous est pour CyberGhost VPN.
Code : Tout sélectionner
services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
cap_add:
- NET_ADMIN
ports:
- 8082:8082 #qbittorrent
- 6881:6881 #qbittorrent
- 6881:6881/udp #qbittorrent
devices:
- /dev/net/tun:/dev/net/tun
environment:
- VPN_SERVICE_PROVIDER=cyberghost
- OPENVPN_USER=
- OPENVPN_PASSWORD=
- SERVER_COUNTRIES=
volumes:
- /srv/dev-disk-by-uuid-fc70f6e9-109d-414a-8788-ab7d14ac4b6d/configs/gluetun:/gluetun
restart: unless-stopped

Sélectionnez gluetun dans la liste et cliquez sur la flèche vers le haut du menu pour installer et lancer l'application

Faites la même chose avec l'application qbittorrent. Remarquez qu'il n'y a aucun port affiché

Si on retourne dans Putty et qu'on lance de nouveau la commande curl ipinfo.io, notre serveur tourne toujours sur notre adresse normale.

Par contre, si nous retournons dans le container qBittorrent et que nous lançons la même commande, nous constatons que nous sommes maintenant en Bulgarie (je suppose que CyberGhost connecte le Kazkhstan en Bulgarie).

Et l'adresse IP affichée dans qBittorrent correspond bien

CQFD !
Maintenant, plus qu'à éditer les autres applications (JDownloader 2, SABnzbd et MeTube) en y rajoutant la ligne
Code : Tout sélectionner
network_mode: container:gluetunDernières opérations après toutes ces modifications : faire Up sur chaque application en commençant par gluetun. Les autres applications dépendent maintenant de cette dernière, donc elles ne se lanceront pas et afficheront une erreur si elles sont lancées avant.
Le script de votre application gluetun ressemblera finalement à ceci
Code : Tout sélectionner
services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
cap_add:
- NET_ADMIN
ports:
- 5800:5800 #jdownloader-2
- 8080:8080 #sabnzbd
- 8081:8081 #metube
- 8082:8082 #qbittorrent
- 6881:6881 #qbittorrent
- 6881:6881/udp #qbittorrent
devices:
- /dev/net/tun:/dev/net/tun
environment:
- VPN_SERVICE_PROVIDER=cyberghost
- OPENVPN_USER=
- OPENVPN_PASSWORD=
- SERVER_COUNTRIES=Kazakhstan
volumes:
- /srv/dev-disk-by-uuid-fc70f6e9-109d-414a-8788-ab7d14ac4b6d/configs/gluetun:/gluetun
restart: unless-stopped
Vous pourrez évidemment retourner dans l'environnement Docker de chaque application via Putty pour vérifier qu'elle tourne bien en utilisant le VPN.
En rapport avec le post Trucs et astuces concernant l'accélération de vos téléchargements sous jdownloader via un VPN, ceci est bien évidemment directement opérationnel en suivant ce tuto, et vous n'aurez jamais à activer/désactiver le VPN. J'ai même poussé le vice plus loin en créant plusieurs Docker Gluetun et jdownloader2 suivant différents pays afin de bénéficier des avantages de chacun.
Attention toutefois que si vous utilisez un service de débridage comme AllDebrid ou Real-Debrid, ils peuvent s'emmêler les pinceaux si vous swappez souvent vos téléchargements depuis plusieurs pays en même temps.