# Téléchargez avec qBittorrent et boostez votre ratio grâce à Joal, en restant derrière un VPN

Ce guide présente une configuration Docker pour télécharger des torrents tout en simulant une activité crédible sur les trackers, le tout en restant derrière un VPN.

> ⚠️ Ce wiki n'est pas conçu pour vous aider ou vous encourager à télécharger des contenus illégaux ! Vous devez respecter la législation en vigueur dans votre pays. Je ne saurais être tenu responsable des activités illégales résultant de votre utilisation.

[![](https://wiki.favrep.ch/uploads/images/gallery/2025-06/scaled-1680-/image-1749413813294.png)](https://wiki.favrep.ch/uploads/images/gallery/2025-06/image-1749413813294.png)
[![](https://wiki.favrep.ch/uploads/images/gallery/2025-06/scaled-1680-/image-1749413841198.png)](https://wiki.favrep.ch/uploads/images/gallery/2025-06/image-1749413841198.png)

### 1. Docker Compose pour qBittorrent et Joal

Voici un exemple de fichier `docker-compose.yml` configuré pour :

- **Gluetun** : un conteneur VPN robuste prenant en charge de nombreux fournisseurs (Surfshark, NordVPN, Mullvad, etc.) pour masquer votre adresse IP et protéger votre anonymat. 
- **test_ip_vpn** : un outil léger pour vérifier que le VPN est bien actif et que votre IP publique correspond à celle du VPN.  
- **qBittorrent** : le client torrent puissant et facile à utiliser, accessible via une interface web pour gérer vos téléchargements.  
- **Joal** : un simulateur d’activité torrent permettant d’envoyer de faux partages, afin de retarder ou d’éviter les restrictions liées au ratio sur certains trackers.

**Important :**  
Adaptez les chemins des volumes en fonction de l’emplacement de vos données sur votre système.

Le conteneur **Gluetun** supporte un grand nombre de fournisseurs VPN, notamment :  
**AirVPN, Cyberghost, ExpressVPN, FastestVPN, Giganews, HideMyAss, IPVanish, IVPN, Mullvad, NordVPN, Perfect Privacy, Privado, Private Internet Access, PrivateVPN, ProtonVPN, PureVPN, SlickVPN, Surfshark, TorGuard, VPNSecure.me, VPNUnlimited, VyprVPN, WeVPN, Windscribe.**

Pour plus d’informations et pour consulter la documentation complète, rendez-vous sur :  
[https://github.com/qdm12/gluetun](https://github.com/qdm12/gluetun)

```yaml
services:
  gluetun:
    container_name: gluetun
    image: qmcgaw/gluetun
    restart: unless-stopped
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    ports:
      - 6060:8080                         # Interface web Joal
      - 7070:7070                         # Interface web Qbittorent
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Zurich
      - VPN_SERVICE_PROVIDER=surfshark    # Configs des autres fournisseurs : https://github.com/qdm12/gluetun-wiki/tree/main/setup/providers
      - VPN_TYPE=wireguard
      - WIREGUARD_PRIVATE_KEY=XXXXXX=     # Remplacez par votre clé privée
      - WIREGUARD_ADDRESSES=10.14.0.2/16
      - SERVER_COUNTRIES=Switzerland
      - UPDATER_VPN=12h                   # Mets à jour le VPN
      - DNS_ADDRESS=194.242.2.2           # DNS Mullvad
    networks:
      - gluetenbridge

  curl:
    image: curlimages/curl
    container_name: test_ip_vpn
    command: ["curl", "ipinfo.io"]
    restart: no
    network_mode: service:gluetun
    depends_on:
      gluetun:
        condition: service_healthy

  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent
    restart: unless-stopped
    network_mode: service:gluetun
    depends_on:
      gluetun:
        condition: service_healthy
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Zurich
      - WEBUI_PORT=7070
      - TORRENTING_PORT=6881
    volumes:
      - /srv/qbittorrent/appdata:/config  # Assurez-vous que le dossier correspond à votre configuration
      - /mnt/nas_multimedia:/downloads  # Assurez-vous que le dossier correspond à votre configuration

#  joal:
#    image: ghcr.io/skylanix/joal:latest
#    container_name: joal
#    restart: unless-stopped
#    network_mode: service:gluetun
#    depends_on:
#      gluetun:
#        condition: service_healthy
#    environment:
#      - PUID=1000
#      - PGID=1000
#      - TZ=Europe/Zurich
#    volumes:
#      - /srv/joal/data:/data  # Assurez-vous que le dossier correspond à votre configuration
#    command: 
#      - "--joal-conf=/data"
#      - "--spring.main.web-environment=true"
#      - "--server.port=8080"
#      - "--joal.ui.path.prefix=joal"
#      - "--joal.ui.secret-token=YourToken"

networks:
  gluetenbridge:
    driver: bridge
```

#### Vérification de l'IP VPN

Le service `curl` est là pour vérifier l’IP publique utilisée par le VPN. Affichez ses logs après lancement :
```bash
docker logs test_ip_vpn
```
Vous devriez voir l’adresse IP (celle du VPN). Si elle ne s'affiche pas, redémarrez le conteneur, vous vérifiez à nouveau que vous êtes bien connecté au VPN.

#### ⚠️ Avertissements importants

- **Sécurité du token :**  
  Remplacez `YourToken` par un mot de passe fort unique. Ne le divulguez pas publiquement et protégez l’accès à l’interface Joal.

- **Gestion du simulateur Joal :**  
  Si votre ratio est déjà satisfaisant, pour éviter les risques de bannissement par les trackers, désactivez Joal temporairement en commentant la ligne `restart: unless-stopped` dans le fichier `docker-compose.yml`. Cela empêchera le conteneur de redémarrer automatiquement (le simulateur démarre un upload dès son lancement).

### 2. Accéder à l’interface web de qBittorent
L’interface est accessible via :  
```
http://<ip_serveur>:7070
```

**Le nom d'utilisateur est admin et le mot de passe temporaire est a changé  ce trouve dans les logs du conteneur :**
```bash
docker logs qbittorrent
```

### 3. Accéder à l’interface web de Joal

L’interface est accessible via :  
```
http://<ip_serveur>:6060/joal/ui
```
Note : Le chemin `/joal/ui` correspond au préfixe défini dans la configuration.

### 4. Configuration initiale de Joal

1. Cliquez sur **"Modifier les paramètres de connexion"** dans l’interface.  
   ![Modifier paramètres](https://wiki.favrep.ch/uploads/images/gallery/2025-05/scaled-1680-/image-1747246990911.png)

2. Configurez les paramètres :  
   - **Adresse du serveur :** l’IP ou le nom de domaine de votre serveur  
   - **Port du serveur :** `6060`  
   - **Préfixe du chemin :** `joal`  
   - **Jeton secret :** le token choisi dans le docker-compose 
   - Cliquez sur **Enregistrer**  
   ![Paramètres connexion](https://wiki.favrep.ch/uploads/images/gallery/2025-05/scaled-1680-/image-1747247035329.png)

### 5. Paramètres de configuration Joal

- Définissez les vitesses minimales et maximales de téléchargement simulé.
- Choisissez votre client torrent préféré.
- Limitez le nombre de torrents envoyés simultanément.
- Précisez le ratio requis pour chaque torrent (mettre `-1` pour illimité).
  
**Conseil :** Ne poussez pas les vitesses trop haut pour rester discret.

### 6. Ajout de torrents dans Joal

Trois méthodes possibles :

- Glisser-déposer les fichiers `.torrent` dans le tableau de bord Joal.
- Cliquer sur le bouton "+" et sélectionner un fichier.
- Copier les fichiers `.torrent` directement dans le dossier `/srv/joal/data/torrents`.

### 7. Conseils d’utilisation

- Sélectionnez de préférence des torrents avec beaucoup de seeds (sources) pour que le partage simulé soit crédible.
- Surveillez régulièrement l’état via l’interface Joal.
- Tenez compte des règles du tracker pour éviter d’être banni.

Si vous avez besoin d’aide supplémentaire ou de précisions, n’hésitez pas à demander !

**Remarque :** Ce tutoriel s'adresse à un usage modéré et responsable des outils de torrenting. Tricher peut nuire à l’écosystème des trackers et violer leurs conditions d’utilisation.

### 8. Remerciements

Je remercie Linuxon, Mow, Chomiam et tous les autres d'avoir été les crash-testeurs, de m'avoir rapporté toutes mes erreurs pour améliorer cet article !