Contenu | Rechercher | Menus

Annonce

L'équipe des administrateurs et modérateurs du forum vous souhaite d'excellentes fêtes de fin d'année !

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/12/2018, à 00:19

blueduck

Docker modifie iptables et bloque OpenVPN

Bonsoir,

Je rencontre une difficulté avec Docker, qui lorsqu'il démarre modifie les règles d'iptables.

Or je me suis aperçu que ces modifications "parasitent" la communication entre mon LAN et celui du bureau, qui sont reliés par OpenVPN.

Si je désactive Docker au démarrage, les deux LAN communiquent parfaitement, et les chaînes iptables sont les suivantes :

$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             192.168.10.40        tcp dpt:58051
ACCEPT     tcp  --  anywhere             192.168.10.40        tcp dpt:58050

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Puis j'active Docker et je le démarre ; je liste à nouveau les chaînes d'iptables, ce qui donne alors ce résultat :

$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             192.168.10.40        tcp dpt:58051
ACCEPT     tcp  --  anywhere             192.168.10.40        tcp dpt:58050

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  --  anywhere             anywhere            
DOCKER-ISOLATION-STAGE-1  all  --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
DOCKER     all  --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain DOCKER (1 references)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             172.17.0.2           tcp dpt:http

Chain DOCKER-ISOLATION-STAGE-1 (1 references)
target     prot opt source               destination         
DOCKER-ISOLATION-STAGE-2  all  --  anywhere             anywhere            
RETURN     all  --  anywhere             anywhere            

Chain DOCKER-ISOLATION-STAGE-2 (1 references)
target     prot opt source               destination         
DROP       all  --  anywhere             anywhere            
RETURN     all  --  anywhere             anywhere            

Chain DOCKER-USER (1 references)
target     prot opt source               destination         
RETURN     all  --  anywhere             anywhere

Avec ces modifications, seul le serveur OpenVPN peut encore communiquer avec le LAN du bureau : aucun des postes de la maison n'y arrive plus, et inversement les postes du bureau ne "voient" plus ceux de la maison (en-dehors du serveur OpenVPN lui-même).

Comme je suis très ignorant du fonctionnement d'iptables, je n'arrive pas à identifier laquelle des règles mises en place par Docker bloque le VPN. Je comprends vaguement que la politique par défaut de la chaîne FORWARD passe de ACCEPT à DROP, mais je ne sais pas dire si c'est de là que vient le problème, ni comment et dans quel ordre les chaînes interagissent entre elles.
Si j'y arrivais, je me dis que peut-être il serait possible d'ajouter une ou deux règles pour rétablir les communications à travers le VPN, sans pour autant gêner le fonctionnement de Docker.

Quelqu'un peut-il m'expliquer ce qui se passe et comment y remédier ?

Cordialement,

Blue Duck

Dernière modification par blueduck (Le 01/01/2019, à 11:37)


Poste de travail : Kubuntu (KDE Plasma 5.14.4, Frameworks 5.52.0) « Cosmic Cuttlefish » 18.10 64 bits - Intel Core i7 860 @ 2.8 GHz - SLI 2 x Asus GTX660-DC2T-2GD5
Serveur domestique : Ubuntu Server « Bionic Beaver » 18.04.1 LTS 64 bits - Intel Core i5 2400S @ 2.5 GHz

Hors ligne

#2 Le 13/01/2019, à 00:29

Junkaria

Re : Docker modifie iptables et bloque OpenVPN

Salut,
Je te conseille vivement de suivre un petit cours sur IPTables, franchement ce n'est pas si compliqué qu'il n'y parait, et ça te permettra de comprendre ce que tu fais plutôt que de suivre des conseils qui peuvent t'induire en erreur et qui peuvent foutre un peu la merde, et tu finiras par tout virer parce que tu en aura marre d’enchaîner les galères tongue

Pour commencer, tes règles pour le VPN ne sont pas complètes, ce qui brouille déjà le trajet de tes packets.
Comment les modifies-tu ? Script bash ?


AdminSys/Developper

Hors ligne