Files
202601docs/docs/vault/services-v1/transmission.md
2025-12-31 18:44:24 +01:00

178 lines
4.0 KiB
Markdown

# Transmission - Torrent Client
## Vue d'ensemble
Transmission est le client BitTorrent utilisé sur Talloires, configuré pour router **tout son trafic via ProtonVPN** afin de protéger la vie privée et masquer l'activité de téléchargement à l'ISP.
!!! success "Configuration VPN"
Le trafic de Talloires (10.171.171.7) est automatiquement routé via ProtonVPN sur Theseus, garantissant que Transmission est invisible pour l'ISP.
## Informations de connexion
| Paramètre | Valeur |
|-----------|--------|
| **URL locale** | http://talloires.local:9091 |
| **URL Tailscale** | http://talloires.tailfd281f.ts.net:9091 |
| **Container** | `transmission` |
| **Réseau Docker** | `talloires_net` |
| **IP Container** | 172.20.0.17 |
## Configuration
### Docker Compose
```yaml
transmission:
image: linuxserver/transmission:latest
container_name: transmission
restart: unless-stopped
ports:
- 51413:51413
- 51413:51413/udp
expose:
- 9091
environment:
- PUID=1026
- PGID=100
- TZ=Europe/Luxembourg
volumes:
- talloires_transmission_config:/config
- /mnt/mediaserver/downloads:/downloads
networks:
- talloires_net
```
### Vérification VPN
Le trafic de Transmission passe par ProtonVPN :
```bash
# Vérifier l'IP publique de Transmission
docker exec transmission sh -c "curl -s ipinfo.io"
```
Résultat attendu :
```json
{
"ip": "5.253.204.205",
"city": "Brussels",
"country": "BE",
"org": "AS9009 M247 Europe SRL"
}
```
!!! warning "IP différente de l'ISP"
L'IP normale de l'ISP est `87.240.228.220` (POST Luxembourg). Si Transmission montre cette IP, le VPN ne fonctionne pas correctement.
## Script de contrôle
Un script de gestion est disponible pour démarrer/stopper Transmission facilement.
### Emplacement
```bash
/home/lionel/scripts/transmission-control.sh
```
### Utilisation
```bash
# Stopper Transmission
~/scripts/transmission-control.sh stop
# Démarrer Transmission
~/scripts/transmission-control.sh start
# Redémarrer Transmission
~/scripts/transmission-control.sh restart
# Voir le statut et les statistiques
~/scripts/transmission-control.sh status
```
### Exemple de sortie
```bash
$ ~/scripts/transmission-control.sh status
=== Transmission Status ===
1b69f36ee669 linuxserver/transmission:latest Up 3 days transmission
=== Network Stats ===
CONTAINER ID NAME CPU % MEM USAGE / LIMIT NET I/O
1b69f36ee669 transmission 0.05% 45MiB / 7.68GiB 16.8GB / 813MB
```
## Monitoring
### Vérifier l'état du tunnel VPN
Sur Theseus :
```bash
# Voir les statistiques du tunnel WireGuard
ssh -l root theseus.local 'wg show wgclt1'
```
### Logs Transmission
```bash
# Logs en temps réel
docker logs -f transmission
# Dernières 50 lignes
docker logs transmission --tail 50
```
## Dépannage
### Transmission ne télécharge pas
1. Vérifier que le VPN est actif :
```bash
ssh -l root theseus.local 'wg show wgclt1 | grep handshake'
```
2. Vérifier l'IP de Transmission :
```bash
docker exec transmission sh -c "curl -s ipinfo.io | grep ip"
```
3. Redémarrer Transmission :
```bash
~/scripts/transmission-control.sh restart
```
### Vitesse lente
Le routage via VPN peut réduire la vitesse. Vérifier :
1. **Latence du tunnel** :
```bash
ssh -l root theseus.local 'ping -c 3 10.2.0.1' # Gateway VPN
```
2. **Charge CPU de Talloires** :
```bash
docker stats transmission --no-stream
```
## Sécurité
### Isolation réseau
Talloires est configuré comme **DMZ** :
- ✅ Accès sortant uniquement via ProtonVPN
- ❌ Pas d'accès vers les autres devices du LAN (Annecy, Olympou)
- ✅ ACL Tailscale bloque les connexions depuis Talloires
### Kill Switch
Si le VPN tombe, Talloires **perd l'accès Internet** (pas de fallback sur l'IP ISP), garantissant qu'aucun trafic torrent ne fuite.
## Ressources
- [Transmission Web UI](http://talloires.local:9091)
- [LinuxServer Transmission Docs](https://docs.linuxserver.io/images/docker-transmission)
- Configuration complète : `/home/lionel/docker/media/docker-compose.yml`