Optimiser qBittorrent avec Mullvad sur NAS Synology
Configuration Docker + GlueTUN + WireGuard avec Mullvad. Parfait pour l'anonymat, mais sans port forwarding (ratio limité).
Ce guide a un but éducatif. monratio.fr n'encourage en aucun cas le piratage ou le téléchargement illégal de contenus protégés par le droit d'auteur.
Depuis 2023, Mullvad a supprimé le port forwarding sur tous ses serveurs. Conséquence directe : votre qBittorrent n'aura jamais de port ouvert (flamme orange permanente dans l'interface). Vous pourrez toujours télécharger, mais les autres peers ne pourront pas se connecter à vous : le ratio est donc très limité.
Mullvad reste un excellent choix pour l'anonymat pur (paiement cash, pas de compte email, politique no-log stricte), mais si votre priorité est le ratio sur trackers privés, regardez plutôt notre guide qBittorrent + ProtonVPN sur NAS Synology qui conserve le port forwarding natif.
Synology DS418play (Intel Celeron J3355, 2 Go de RAM), HDD classiques en SHR, fibre 800 Mb/s, Docker avec GlueTUN + qBittorrent + Mullvad.
Résultat mesuré : de 3 Mo/s à 25 Mo/s sur le même hardware, avec anonymat maximal.
🐢 Pourquoi votre NAS rame
Votre NAS télécharge à 3 Mo/s alors que vous avez une fibre à 800 Mb/s ? Le coupable n'est pas votre connexion. C'est le protocole VPN que vous utilisez.
Il existe deux grandes technologies pour chiffrer votre trafic VPN :
Comparaison OpenVPN vs WireGuard sur NAS :
Dans mes tests, le passage de l'un à l'autre a multiplié le débit par 8 sur le même serveur Mullvad, sans rien toucher d'autre. C'est LA première chose à changer.
OpenVPN = chiffrement userland, overhead CPU massif sur Celeron. WireGuard = kernel-level, zéro overhead. Résultat mesuré : ×8 en débit sur le même serveur Mullvad.
Benchmark DS418play (Celeron J3355) :
# OpenVPN (avant)
$ top
CPU : 98.2% user, openvpn pid 1234
$ iperf3 -c test.mullvad
[ 5] 0.00-10.00 sec 36 MBytes 30 Mbits/sec
# WireGuard (après)
$ top
CPU : 14.8% user, wireguard kernel
$ iperf3 -c test.mullvad
[ 5] 0.00-10.00 sec 240 MBytes 201 Mbits/sec Pourquoi la différence est si grande ? OpenVPN fait passer chaque paquet réseau par plusieurs couches logicielles avant de le chiffrer. WireGuard, lui, intercepte les paquets directement dans le noyau du système, là où c'est le plus rapide. Sur un PC avec un CPU puissant, vous ne verrez pas la différence. Mais sur un petit NAS, c'est le jour et la nuit.
🔑 Récupérer votre config WireGuard Mullvad
Mullvad a une approche radicalement différente des autres VPN : pas d'email, pas de mot de passe, pas de profil utilisateur. À la création de compte, vous recevez simplement un numéro de compte à 16 chiffres qui vous sert d'identifiant unique. C'est ce qui fait sa réputation en matière d'anonymat.
Pour récupérer votre config WireGuard :
- Rendez-vous sur mullvad.net/account/wireguard-config
- Connectez-vous avec votre numéro de compte à 16 chiffres
- Cliquez sur "Generate key" pour créer une nouvelle paire de clés WireGuard
- Sélectionnez un pays et un serveur (France, Suède ou Pays-Bas sont de bons choix pour le P2P)
- Téléchargez le fichier
.confgénéré
Options recommandées :
Une fois le fichier .conf téléchargé, ouvrez-le avec un éditeur de texte (Bloc-notes, TextEdit…). Vous y trouverez les infos importantes :
Contenu du fichier .conf :
[Interface]
PrivateKey = xxxxx...xxxxx ← Notez cette ligne
Address = 10.66.xxx.xxx/32 ← Notez cette ligne
DNS = 10.64.0.1
[Peer]
PublicKey = ...
AllowedIPs = 0.0.0.0/0
Endpoint = xx.mullvad.net:51820 Gardez ces deux valeurs sous la main, on va les coller dans le docker-compose à l'étape suivante.
Sur mullvad.net/account/wireguard-config :
# Génération config WireGuard :
Account: <16-digit-number>
Platform: Linux
Generate key → nouvelle paire de clés
Country: France / Sweden / Netherlands
City: Paris / Stockholm / Amsterdam
# Récupérer dans le .conf :
PrivateKey = xxxxx
Address = 10.66.x.x/32
# Port forwarding : RETIRÉ DEPUIS 2023
# → ratio limité, pas d'incoming peers L'anonymat Mullvad, pourquoi c'est unique. Zéro email requis, paiement possible en cash par courrier (littéralement : vous envoyez un billet dans une enveloppe avec votre numéro de compte), audits de sécurité publics réguliers, politique no-log stricte. Si votre priorité est de disparaître complètement du radar, c'est le meilleur choix du marché. Le prix à payer : plus de port forwarding.
🐳 Créer le docker-compose GlueTUN + qBittorrent
Docker est déjà installé sur votre Synology (depuis DSM 7.2, c'est Container Manager). On va utiliser Docker Compose qui permet de lancer plusieurs conteneurs en une seule commande.
On va lancer 2 conteneurs qui travaillent ensemble :
Créez un fichier docker-compose.yml dans /volume1/docker/qbittorrent/ et collez le code ci-dessous. Remplacez VOTRE_CLE_PRIVEE et VOTRE_ADRESSE par les valeurs récupérées à l'étape 2.
docker-compose.yml :
services:
gluetun:
image: qmcgaw/gluetun:latest
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
environment:
- VPN_SERVICE_PROVIDER=mullvad
- VPN_TYPE=wireguard
- WIREGUARD_PRIVATE_KEY=VOTRE_CLE_PRIVEE
- WIREGUARD_ADDRESSES=10.66.xxx.xxx/32
- SERVER_CITIES=Paris
- TZ=Europe/Paris
ports:
- 9775:9775
volumes:
- /volume1/docker/gluetun:/gluetun
restart: always
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent
network_mode: "service:gluetun"
depends_on:
gluetun:
condition: service_healthy
environment:
- PUID=1026
- PGID=100
- TZ=Europe/Paris
- WEBUI_PORT=9775
volumes:
- /volume1/docker/qbittorrent:/config
- /volume1/docker/qbittorrent/downloads:/downloads
restart: always Lancez ensuite les conteneurs. Dans Container Manager (DSM 7.2+), cliquez sur "Project" puis "Create", sélectionnez votre fichier docker-compose.yml et validez.
Décortiquons les lignes les plus importantes :
VPN_SERVICE_PROVIDER=mullvad: GlueTUN reconnaît Mullvad nativement et sait comment se connecter à son infrastructure WireGuard.SERVER_CITIES=Paris: ciblez une ville précise. Alternatives selon votre localisation :Stockholm,Amsterdam,Zurich,Frankfurt. Vous pouvez aussi utiliserSERVER_COUNTRIES=Francesi vous ne voulez pas préciser.- Aucune variable de port forwarding : contrairement à ProtonVPN, Mullvad ne supporte plus cette fonctionnalité. Ne surtout pas ajouter
VPN_PORT_FORWARDING, cela ferait planter GlueTUN. network_mode: "service:gluetun": qBittorrent utilise le réseau de GlueTUN. Si le VPN tombe, qBittorrent perd Internet. C'est votre kill switch automatique.PUID=1026 PGID=100: les identifiants utilisateur/groupe sur Synology. Vérifiez les vôtres en SSH avecid.
Fichier /volume1/docker/qbittorrent/docker-compose.yml :
services:
gluetun:
image: qmcgaw/gluetun:latest
container_name: gluetun
cap_add: [NET_ADMIN]
devices: [/dev/net/tun:/dev/net/tun]
environment:
- VPN_SERVICE_PROVIDER=mullvad
- VPN_TYPE=wireguard
- WIREGUARD_PRIVATE_KEY=<key>
- WIREGUARD_ADDRESSES=10.66.x.x/32
- SERVER_CITIES=Paris
# PAS de VPN_PORT_FORWARDING (non supporté par Mullvad)
ports: [9775:9775]
volumes: [/volume1/docker/gluetun:/gluetun]
restart: always
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
network_mode: "service:gluetun"
depends_on: { gluetun: { condition: service_healthy } }
environment:
- PUID=1026
- PGID=100
- WEBUI_PORT=9775
volumes:
- /volume1/docker/qbittorrent:/config
- /volume1/docker/qbittorrent/downloads:/downloads Déploiement :
# En SSH sur le NAS
cd /volume1/docker/qbittorrent
docker-compose up -d
docker logs -f gluetun # Vérifier "wireguard: connection is up" Le kill switch automatique. Grâce à network_mode: "service:gluetun", qBittorrent ne peut passer que par le VPN. Si GlueTUN s'arrête ou perd la connexion avec Mullvad, qBittorrent perd Internet instantanément. Aucun risque de fuite de votre vraie IP, même pendant une fraction de seconde. C'est exactement le même mécanisme qu'avec ProtonVPN, l'anonymat Mullvad en prime.
💾 Régler qBittorrent pour HDD classiques
Les disques durs mécaniques sont le deuxième goulot d'étranglement après le VPN. Un HDD lit/écrit à 100-150 Mo/s quand les données sont séquentielles. Mais BitTorrent télécharge par petits morceaux en désordre : c'est ce qu'on appelle les écritures aléatoires, et ça tue les performances.
L'astuce : utiliser la RAM du NAS comme tampon pour absorber ces écritures en vrac, puis les écrire sur le disque de façon plus ordonnée.
Connectez-vous à l'interface web de qBittorrent (http://IP-NAS:9775), puis allez dans Paramètres → Avancé :
Paramètres → Avancé :
Puis dans Comportement :
Paramètres → Comportement :
Paramètres → Avancé :
- Fils d'E/S asynchrones :
10 - Fils de hachage :
2 - Taille file disque :
1024Kio - Type E/S :
Compatible POSIX - Mode R/W E/S :
Cache du système d'exploitation - Affinité extension :
Oui
Comportement :
- Limite mémoire :
128 Mio(2Go) /512 Mio(4+Go) - Mémoire vérification :
128 Mio - Interface réseau :
tun0(kill switch)
Pourquoi upgrader la RAM fait une différence. Plus votre NAS a de RAM libre, plus le cache d'écriture peut absorber de données avant de les écrire sur le disque. Sur DS418play, passer de 2 Go à 6 Go coûte ~20€ et double facilement les débits sur HDD. C'est l'upgrade avec le meilleur rapport qualité/prix.
🎯 Limiter les torrents actifs
Ça peut sembler contre-intuitif : pourquoi limiter le nombre de téléchargements si on veut aller vite ? Parce que chaque torrent actif écrit sur le disque en même temps. Plus il y en a, plus le disque doit sauter entre des fichiers différents, et plus il ralentit.
C'est comme un serveur dans un restaurant : s'il sert 3 tables, tout va bien. S'il en sert 15, tout le monde attend.
Allez dans Paramètres → BitTorrent → File d'attente :
Résultat concret : passer de 15 torrents actifs à 3 peut doubler votre débit effectif sur HDD.
Paramètres → BitTorrent → File d'attente :
- DL actifs :
3 - UL actifs :
5 - Total actifs :
8 - Vérification :
1
Moins de torrents parallèles = I/O plus séquentielles = ×2 débit sur HDD.
📦 Préallouer l'espace disque
Dans Paramètres → Téléchargements, cochez "Préallouer l'espace disque pour tous les fichiers".
Que fait cette option ? Quand vous lancez un torrent de 20 Go, qBittorrent réserve immédiatement 20 Go d'espace continu sur le disque, avant même de commencer le téléchargement. Sans ça, les morceaux du fichier atterrissent un peu partout (fragmentation), ce qui ralentit tout : le téléchargement, le seeding, et même la lecture si vous utilisez Plex.
Le seul inconvénient : le démarrage d'un torrent prend quelques secondes de plus. Mais le gain en performance sur la durée en vaut largement la peine.
Paramètres → Téléchargements → cocher Préallouer l'espace disque pour tous les fichiers. Réduit la fragmentation HDD, améliore les perfs de seeding et de lecture Plex/Jellyfin.
🔥 Vérification : la flamme orange est normale
Une fois tout lancé, regardez en bas à droite de l'interface web de qBittorrent. Vous y verrez une petite icône de connexion. Avec Mullvad, elle restera orange, et c'est parfaitement normal.
Comment vérifier que tout fonctionne bien malgré la flamme orange :
- Vérifiez votre IP publique : ouvrez un terminal dans le conteneur qBittorrent (Container Manager → qbittorrent → Terminal) et tapez
curl ifconfig.me. L'IP affichée doit être celle de Mullvad, pas la vôtre. - Consultez les logs GlueTUN : dans Container Manager, ouvrez les logs du conteneur
gluetun. Cherchez la lignewireguard: connection is up. Si elle apparaît, le tunnel est actif. - Test de fuite DNS : sur un navigateur depuis votre PC (pas le NAS), allez sur mullvad.net/check. Le site confirmera que vous êtes bien derrière Mullvad.
Débit : 25 Mo/s · CPU : 20% · Ratio : limité (port fermé)
Indicateur qBittorrent avec Mullvad :
- 🟠 Orange : port fermé (normal, Mullvad n'a plus de port forwarding)
- 🔴 Rouge : VPN down, kill switch actif
Checks rapides :
# 1. IP publique via gluetun
docker exec gluetun wget -qO- ifconfig.me
# → doit retourner une IP Mullvad
# 2. Logs tunnel
docker logs gluetun 2>&1 | grep -i "connection is up"
# 3. Check officiel Mullvad (depuis un client)
curl https://am.i.mullvad.net/json | jq Implication ratio : incoming peers impossibles, seeding uniquement vers les seeds qui vous contactent en premier. Sur trackers privés stricts, bannissement quasi certain à moyen terme. Pour ratio sérieux, migrer vers ProtonVPN avec port forwarding natif.
Résultats mesurés sur le setup testé. Avant : OpenVPN Mullvad + réglages par défaut = 3 Mo/s. Après : WireGuard Mullvad + réglages optimisés HDD = 25 Mo/s (×8). Le CPU tourne à 20%, la RAM à 40%, Plex continue de streamer pendant les téléchargements.
Limitation connue : sans port forwarding, impossible d'atteindre un ratio élevé sur trackers privés. Mullvad reste idéal pour télécharger en toute discrétion sur trackers publics ou pour l'anonymat strict. Pour le ratio, ProtonVPN conserve le port forwarding et reste la meilleure option.
Mullvad est imbattable pour l'anonymat, mais sans port forwarding il plafonne votre ratio. Si vous voulez seeder efficacement, conserver une flamme verte et maintenir un ratio 2.0+ sur des trackers type PassThePopcorn, HDB ou Orpheus, ProtonVPN est un meilleur choix : il propose le port forwarding natif via WireGuard, au même niveau de sécurité que Mullvad.
Voir le guide qBittorrent + ProtonVPN sur NAS Synology →Vous avez votre NAS qui tourne avec Mullvad. Et le reste ?
Un seul abonnement Mullvad protège jusqu'à 5 appareils. Continuez à anonymiser votre écosystème.