Contenu | Rechercher | Menus

Annonce

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 18/04/2014, à 00:08

t0ma

iptables, --or-mark et tun0 sont dans un bateau

Salut,

je suis assez peu expérimenté avec iptables et vu que je bloque, je viens vous demander conseil.

Chez moi, j'ai :
- un pc de bureau -> 192.168.0.10
- un petit serveur qui me sert de seedbox -> 192.168.0.11
- sur la seedbox, un client openvpn tourne et utilise l'interface tun0
La mise en réseau se fait par une box.

Ce que je souhaiterai :
utiliser iptables pour empêcher toute communication de la seedbox en dehors du VPN, sauf avec mon PC de bureau.

Pour ce faire, je pensais pouvoir marquer les paquets en fonction de leur provenance/destination et en fonction du périphérique par lequel ils passent pour pouvoir ensuite les accepter ou les refuser.

Ce que j'ai fait :
(les lignes qui suivent servent uniquement à gérer le trafic entrant, le même principe sera appliqué au trafic sortant si j'arrive à faire fonctionner ces quelques lignes)

iptables -t mangle -A PREROUTING -s 192.168.0.10 -j MARK --or-mark 0x1
iptables -t mangle -A PREROUTING -i tun0 -j MARK --or-mark 0x2
iptables -t mangle -A PREROUTING -i eth0 -j MARK --or-mark 0x4
iptables -t mangle -A INPUT -m mark --mark 0x4 -j DROP

Si j'ai bien compris la documentation d'iptables :
- la première ligne me permet de mettre à 1 le bit 0 du marqueur de chaque paquet qui provient de 192.168.0.1
- la deuxième ligne me permet de mettre à 1 le bit 1 du marqueur de chaque paquet qui est passé par tun0
- la troisième ligne me permet de mettre à 1 le bit 2 du marqueur de chaque paquet qui est passé par eth0
- la quatrième ligne me permet de rejeter tous les paquets dont le marqueur a pour valeur 4.
Si le marqueur a pour valeur 4, c'est que le bit 2 et uniquement le bit 2 à été mis à 1. Donc que mon paquet est passé par eth0 MAIS ne provient pas de 192.168.0.10 ET n'est pas passé par tun0.

Lorsque je met en application ces règles de filtrages, la communication entre la seedbox et le pc de bureau fonctionnent encore à merveille mais la seedbox refuse tout contact avec l'extérieur, même si ça passe par le VPN.

Mes questions :
- Est-ce que vous pourriez me confirmer que j'ai bien compris la doc d'iptables (notamment pour le --or-mark) ?
- Est-ce que vous pourriez me confirmer que tun0 étant un périphérique virtuel, tout ce qui passe par tun0 passe nécessairement par eth0 et que iptables devrait voir des paquets qui passent par eth0 puis par tun0 lorsqu'ils entrent et par tun0 puis par eth0 lorsqu'il sortent ?



J'espère qu'il y aura des gens plus éclairés que moins par ici.
Merci d'avance pour l'aide que vous pourrez m'apporter et à la prochaine.

Dernière modification par t0ma (Le 18/04/2014, à 00:09)

Hors ligne

#2 Le 19/04/2014, à 12:59

t0ma

Re : iptables, --or-mark et tun0 sont dans un bateau

Pour ceux que ça intéresse, je suis enfin arrivé à mes fins et la suite de mon monologue se trouve ici.

Si vous voyez des erreurs de raisonnement qui pourraient faire que ma configuration n'est pas optimale (comprendre par là qu'il pourrait y avoir des fuites VPN, merci de me le dire).

Dernière modification par t0ma (Le 19/04/2014, à 13:01)

Hors ligne