Debian Debian-France Debian-Facile Debian-fr.org Debian-fr.xyz Debian ? Communautés

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 07-04-2020 11:26:58

poltru
Membre
Inscription : 07-04-2020

[Résolu] Faire passer le trafic Transmission dans un tunnel VPN

Bonjour,
Pour réaliser une seedbox, j'ai repris ce vieux tutoriel (https://mondedie.fr/d/5933-tuto-faire-p … unnnel-vpn) que j'ai dû adapter à ma configuration.
Donc, comme j'ai un réseau local 192.168.0.x :

- j'ai créé l'interface
auto lo:1
iface lo:1 inet static
address 192.168.1.1
netmask 255.255.255.255

- j'ai adapté le script up.sh :
iptables -N SERVICES
NET_DEV="tun0"
NET_IP="$(command ip -o addr | command grep "${NET_DEV}" | command grep 'inet ' | command sed 's/^.inet ([^ ]) .*$/\1/')"
ip route add default dev tun0 table VPN
ip rule add from 192.168.1.1/32 table VPN
ip rule add from ${NET_IP}/32 table VPN
iptables -A PREROUTING -t nat -i tun0 -p tcp --dport 51413 -j DNAT --to 192.168.1.1
iptables -A PREROUTING -t nat -i tun0 -p udp --dport 51413 -j DNAT --to 192.168.1.1
iptables -A POSTROUTING -t nat -o tun0 -j MASQUERADE
iptables -A INPUT -i tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A SERVICES -p tcp --dport 51413 -j ACCEPT
iptables -A SERVICES -p udp --dport 51413 -j ACCEPT
iptables -A FORWARD -s 192.168.1.1/32 -o enp3s0 -j DROP


Et malgré cela, le téléchargement ne fonctionne pas ! (alors que, si je ne lance pas OpenVPN, Transmission fonctionne parfaitement)
Voici l'état de mon réseau :
ip rule show
0: from all lookup local
32761: from 10.12.0.178 lookup VPN
32762: from 192.168.1.1 lookup VPN
32763: from 10.12.0.197 lookup VPN
32764: from 10.12.0.198 lookup VPN
32765: from 192.168.1.1 lookup VPN
32766: from all lookup main
32767: from all lookup default
echo $NET_IP
10.12.0.198
iptables -t filter --list
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
Chain FORWARD (policy ACCEPT)
target prot opt source destination
DROP all -- HTPC anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Chain SERVICES (0 references)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:51413
ACCEPT udp -- anywhere anywhere udp dpt:51413

netstat -rn
Table de routage IP du noyau
Destination     Passerelle      Genmask         Indic   MSS Fenêtre irtt Iface
0.0.0.0         10.12.0.177     0.0.0.0         UG        0 0          0 tun0
10.12.0.177     0.0.0.0         255.255.255.255 UH        0 0          0 tun0
51.68.152.226   192.168.0.254   255.255.255.255 UGH       0 0          0 wlp2s0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 wlp2s0
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 wlp2s0

Est-ce que quelqu'un a une idée de solution ?
D'avance merci.

Dernière modification par poltru (07-04-2020 22:56:00)

Hors ligne

#2 07-04-2020 13:40:43

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] Faire passer le trafic Transmission dans un tunnel VPN

poltru a écrit :

- j'ai créé l'interface
auto lo:1


lo:1 n'est pas une interface, c'est un alias IP. Il y a longtemps qu'on n'a plus besoin de cet artifice dépassé pour attribuer plusieurs adresses IPv4 à une interface.

poltru a écrit :

ip rule show
0: from all lookup local
32761: from 10.12.0.178 lookup VPN


Poster la liste des règles de routage sans le contenu des tables de routage associées, c'est un peu inutile.

Pourquoi as-tu besoin de tout ce bazar ? La route par défaut est sur tun0, donc tout le trafic sortant vers l'extérieur passe par le VPN.


Il vaut mieux montrer que raconter.

En ligne

#3 07-04-2020 14:55:34

poltru
Membre
Inscription : 07-04-2020

Re : [Résolu] Faire passer le trafic Transmission dans un tunnel VPN

lo:1 n'est pas une interface, c'est un alias IP. Il y a longtemps qu'on n'a plus besoin de cet artifice dépassé pour attribuer plusieurs adresses IPv4 à une interface.


OK, donc je supprime

Pourquoi as-tu besoin de tout ce bazar ? La route par défaut est sur tun0, donc tout le trafic sortant vers l'extérieur passe par le VPN


Comme dit dans l'introduction, j'ai repris un tutoriel de 2014 et j'ai essayé de l'adapter comme j'ai pu...
Est-ce que je dois comprendre de ta réponse qu'il suffit de lancer openvpn pour que le trafic réseau passe intégralement par le tunnel ?
Comment est-ce que je peux m'assurer de cela ?

Hors ligne

#4 07-04-2020 15:44:55

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] Faire passer le trafic Transmission dans un tunnel VPN

poltru a écrit :

OK, donc je supprime


Si tu as vraiment besoin d'une seconde adresse sur l'interface de loopback, il ne suffit pas de supprimer. Il faut ajouter une strophe iface pour configurer la seconde adresse.

poltru a écrit :

Est-ce que je dois comprendre de ta réponse qu'il suffit de lancer openvpn pour que le trafic réseau passe intégralement par le tunnel ?


Tu vois la table de routage aussi bien que moi, tu peux voir ce qui est routé par où.
La plage d'adresses du réseau local n'est évidemment pas routée dans le VPN. Cela inclut notamment l'adresse de la box, qui, si elle est utilisée comme DNS, fera "fuiter" les requêtes DNS en dehors du VPN. Il faut donc t'assurer d'une façon ou d'une autre que les requêtes DNS soient destinées à des serveurs DNS situés hors du réseau local et qui acceptent de répondre à l'adresse du VPN (donc pas les DNS du FAI), et si nécessaire bloquer le trafic DNS vers le réseau local avec iptables ou équivalent.


Il vaut mieux montrer que raconter.

En ligne

#5 07-04-2020 16:16:41

poltru
Membre
Inscription : 07-04-2020

Re : [Résolu] Faire passer le trafic Transmission dans un tunnel VPN

En fait ce dont j'ai besoin est assez simple : faire en sorte que Transmission fonctionne avec OpenVPN.
Pour le reste mes connaissances limitées ne me permettent pas de savoir si la solution que tu proposes est celle qui me permet d'atteindre cet objectif, tout simplement parce que je ne sais pas la mettre en oeuvre...

Du coup, je suis preneur de tes explications et des commandes qui vont avec.

Hors ligne

#6 07-04-2020 22:55:14

poltru
Membre
Inscription : 07-04-2020

Re : [Résolu] Faire passer le trafic Transmission dans un tunnel VPN

Bonsoir,
Finalement la solution la plus simple que j'aie trouvée se situe à cette adresse : https://blog.dorian-depriester.fr/linux … tee-en-vpn et elle fonctionne.

Hors ligne

Pied de page des forums