transmission et vpn

Comment forcer transmission à passer par le vpn, et ne plus transmettre si le vpn se déconnecte ?

Dans les paramètre de transmission, on peut lui indiquer sur quelle adresse ip il doit communiquer. Le problème c’est que cette ip est dynamique avec le vpn. Pour cela il faut passer par une interface virtuel, que l’on va router vers le vpn

Créer une interface virtuel :

sudo ifconfig eth0:1 192.168.0.1 netmask 255.255.255.255 up

Il faut exécuter cette instruction à chaque boot. Je l’ai mis dans mon fichier transmission.sh cf cubieboard seedbox.

Saisir les règles suivantes :

#!/bin/bash
# Source NAT and destination NAT rules to make sure the incoming and ougoing packets on 192.168.0.1 are correctly NATed
iptables -A PREROUTING -t nat -i tun0 -p tcp --dport 6891:6899 -j DNAT --to 192.168.0.1
iptables -A PREROUTING -t nat -i tun0 -p udp --dport 6890 -j DNAT --to 192.168.0.1
iptables -A POSTROUTING -t nat -o tun0 -j MASQUERADE
# Allow session continuation traffic
iptables -A INPUT -i tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Allow Bittorrent traffic via tun0
iptables -A INPUT -i tun0 -p tcp --dport 6891:6899 -j ACCEPT                     # rTorrent random range
iptables -A INPUT -i tun0 -p udp --dport 6890 -j ACCEPT                          # DHT
# Disallow BitTorrent traffic via eth0 - Just to be extra safe 😉
iptables -A FORWARD -s 192.168.0.1/32 -o eth0 -j DROP

Modifier le fichier de configuration de transmission et mettre :

“bind-address-ipv4”: “192.168.0.1”

Installer le routage persistent :

sudo apt-get install iptables-persistent

Lors de l’installation il propose de sauvegarder les routes en cours.

Sources :

Tagués avec : , , , ,

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*