iptables: Je n'y arrive pas ... Le sujet est résolu

Demande d'aide : c'est ici.
Répondre
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

Bonjour a tous,

Un petit coup de main pour iptables:

J'essaye de faire fonctionner les règles suivantes :

-A INPUT -d 192.168.x.0/24 -i enx00e04c68624f -j DROP
-A INPUT -d 192.168.x.0/24 -i enx00e04c68636f -j DROP

Ce que je veux faire, c'est toutes les trames venant des interfaces enx*** qui sont dirigées vers les machines 192.168.x.y soient bloquées.

Pour l'instant, si je me connecte sur le pi qui est connecté en Ethernet sur l'une de ces deux interfaces, j'arrive à me connecter en ssh sur mon laptop qui est sur le réseau 192.168.x.y (ou même à faire du ping sur ce reseau)

Que me manque t-il ?

Merci
Avatar de l’utilisateur
diesel
Membre
Membre
Messages : 271
Inscription : 29 oct. 2022, 22:43
Status : Hors-ligne

2 choses :

1) iptables, c'est has been. Maintenant, il convient d'utiliser nftables (qui fait la même chose mais de manière plus efficace),

2) la syntaxe 192.168.x.0 n'est pas bonne. C'est pour ça que ça ne marche pas. Pour ce que tu veux, c'est 192.168.0.0/16 qui marche.

Amicalement.

Jean-Marie
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

Bonjour,

"2) la syntaxe 192.168.x.0 n'est pas bonne. C'est pour ça que ça ne marche pas. Pour ce que tu veux, c'est 192.168.0.0/16 qui marche.": Je ne suis pas si novice que cela quand meme.
la syntaxe réelle: -A INPUT -d 192.168.0.0/24 -i enx00e04c68624f -j DROP, et non cela ne fonctionne pas (du moins pas encore), quand je suis derrière l'interface enx00e04c68624f, en wifi sur le PI (et donc qui lui passe ensuite par end0 pour sortir), j'ai accès au réseau 192.168.0.0

nfttables: je ne sais pas si c'est installé (j'ai une installation minimale sur mes PI), je vais voir, mais iptables n'est il pas le truc natif ?

Merci
Avatar de l’utilisateur
zargos
Membre
Membre
Messages : 197
Inscription : 07 juil. 2023, 13:34
Status : Hors-ligne

andresayang a écrit : 03 oct. 2024, 15:03 Bonjour,

"2) la syntaxe 192.168.x.0 n'est pas bonne. C'est pour ça que ça ne marche pas. Pour ce que tu veux, c'est 192.168.0.0/16 qui marche.": Je ne suis pas si novice que cela quand meme.
la syntaxe réelle: -A INPUT -d 192.168.0.0/24 -i enx00e04c68624f -j DROP,
Alors quand on dit 192.168.x.y => 192.168.0.0/16
Car si on a 192.168.0.0/24 c'est 192.168.0.y
et non cela ne fonctionne pas (du moins pas encore), quand je suis derrière l'interface enx00e04c68624f, en wifi sur le PI (et donc qui lui passe ensuite par end0 pour sortir), j'ai accès au réseau 192.168.0.0
Quelles sont tes routes?
Comment sont tes interfaces?
enx00e04c68624f c'est le wifi, end0 c'est quoi?
Car si elles sont toutes les deux sur la même machine, le sortant de enx00e04c68624f ne peux pas entrer dans end0.

Les notion INPUT et OUTPUT sont toujours définies à partir de l’extérieur.

Tes règles dépendent donc de l'architecture concernée qui n'est pas décrite dans ton message.

Pour faire simple:
SI machine A est la source des données vers les machines 192.168.0.x/24 alors ce sont des donné&es sortantes que tu veux filtrer.

192.168.0.X <--- SORTANT ---- enx...../MACHINE A
192.168.0.X ----> ENTRANT ----enx...../MACHINE A

Ou:

Réseau X ---> ENTRANT ---> enx..../MACHINE1/end0 ----> SORTANT ---> 192.168.0.x.24

Attention dans le cas ci-dessus si le forward n'est pas activé sur la machine A ça ne peut pas marcher.
nfttables: je ne sais pas si c'est installé (j'ai une installation minimale sur mes PI), je vais voir, mais iptables n'est il pas le truc natif ?

Merci
nftable est le natif désormais depuis la Debian 11 à minima (peut être même Buster en fait, je ne suis plus sur). Personnellement j'utilise Shorewall.

Si tu as plusieurs interfaces liées à ta machine A alors il ne faut pas traiter par interfaces, traites plutôt par sous réseaux.

Dasn tous les cas faute de précision sur l'"archi réseau, point de salut.
Avatar de l’utilisateur
diesel
Membre
Membre
Messages : 271
Inscription : 29 oct. 2022, 22:43
Status : Hors-ligne

Bon, alors je crois avoir un peu mieux compris.

Supposons que x soit égal à 3. Alors, la syntaxe 192.168.3.0/24 est bonne.

Cela dit, si tes règles iptables sont sur la machine A et que tu veux éviter que les paquets sortant de la machine A vers les machines 198.168.3.y soient bloqués, alors, il te faut une règle OUTPUT.

Cela dit, comme on en est réduit à des suppositions sur ton architecture réseau, sur la machine sur laquelle les règles sont implémentées et qu'on n'a pas ton ensemble de règles, difficile de faire des réponses adaptées.

Jean-Marie
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

zargos a écrit : 03 oct. 2024, 15:23
andresayang a écrit : 03 oct. 2024, 15:03 Bonjour,

"2) la syntaxe 192.168.x.0 n'est pas bonne. C'est pour ça que ça ne marche pas. Pour ce que tu veux, c'est 192.168.0.0/16 qui marche.": Je ne suis pas si novice que cela quand meme.
la syntaxe réelle: -A INPUT -d 192.168.0.0/24 -i enx00e04c68624f -j DROP,
Alors quand on dit 192.168.x.y => 192.168.0.0/16
Car si on a 192.168.0.0/24 c'est 192.168.0.y
et non cela ne fonctionne pas (du moins pas encore), quand je suis derrière l'interface enx00e04c68624f, en wifi sur le PI (et donc qui lui passe ensuite par end0 pour sortir), j'ai accès au réseau 192.168.0.0
Quelles sont tes routes?
Comment sont tes interfaces?
enx00e04c68624f c'est le wifi, end0 c'est quoi?
Car si elles sont toutes les deux sur la même machine, le sortant de enx00e04c68624f ne peux pas entrer dans end0.

Les notion INPUT et OUTPUT sont toujours définies à partir de l’extérieur.

Tes règles dépendent donc de l'architecture concernée qui n'est pas décrite dans ton message.

Pour faire simple:
SI machine A est la source des données vers les machines 192.168.0.x/24 alors ce sont des donné&es sortantes que tu veux filtrer.

192.168.0.X <--- SORTANT ---- enx...../MACHINE A
192.168.0.X ----> ENTRANT ----enx...../MACHINE A

Ou:

Réseau X ---> ENTRANT ---> enx..../MACHINE1/end0 ----> SORTANT ---> 192.168.0.x.24

Attention dans le cas ci-dessus si le forward n'est pas activé sur la machine A ça ne peut pas marcher.
nfttables: je ne sais pas si c'est installé (j'ai une installation minimale sur mes PI), je vais voir, mais iptables n'est il pas le truc natif ?

Merci
nftable est le natif désormais depuis la Debian 11 à minima (peut être même Buster en fait, je ne suis plus sur). Personnellement j'utilise Shorewall.

Si tu as plusieurs interfaces liées à ta machine A alors il ne faut pas traiter par interfaces, traites plutôt par sous réseaux.

Dasn tous les cas faute de précision sur l'"archi réseau, point de salut.

Oui, alors pardon, j'aurais du decrire un peu plus. Je laisse depuis pas mal de temps deja, les nom d'interfaces comme elles sortent (dans les forcer en ethx ...).
end0 => ceci est l'interface reseau native des PI (eth0 si vous voulez)
enx00... => deux interfaces usb3-Ethernet qui sont branches sur un permier PI

J'ai un deuxieme PI branché sur l'une ou l'autres des deux interfaces USB-Ethernet. Ce PI propose un AP en wifi. Sur l'autre interface, une prise murale Ethernet.

Donc en gros, je veux bloquer tout ce qui arrive sur les deux interfaces "enx00......."

"Si tu as plusieurs interfaces liées à ta machine A alors il ne faut pas traiter par interfaces, traites plutôt par sous réseaux.": Cela est aussi possible, vu que les deux interfaces enx00.... distribuent en dhcp le même sous-réseau (pas la même plage d'adresse). Je n'aurais qu'un sous-réseau à bloquer. Ce n'est pas con, et des exemples avec des sous-réseaux en entrée sont plus présents sur le net. je vais essayer…

Voila.
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

diesel a écrit : 03 oct. 2024, 15:37 Bon, alors je crois avoir un peu mieux compris.

Supposons que x soit égal à 3. Alors, la syntaxe 192.168.3.0/24 est bonne.

Cela dit, si tes règles iptables sont sur la machine A et que tu veux éviter que les paquets sortant de la machine A vers les machines 198.168.3.y soient bloqués, alors, il te faut une règle OUTPUT.

Cela dit, comme on en est réduit à des suppositions sur ton architecture réseau, sur la machine sur laquelle les règles sont implémentées et qu'on n'a pas ton ensemble de règles, difficile de faire des réponses adaptées.

Jean-Marie
Alors oui et non: J'ai deux PI, l'un qui me sert de relais Wifi chez moi. Ce PI est connecté par Ethernet par son interface native (end0, ou eth0 si tu préfères, ce n'est qu'un nom) sur ma Freebox (Pub !) donc de cette machine, je veux avoir accès au réseau 192.168.0.0/24.

J'ai un deuxième PI dans une location, ce PI sert de point d'accès Wifi, est connecté au premier PI par ethernet sur une interface "Usb-Ethernet" (celles que je nomme enx......). Ce sont les accès sortant de cette machine (donc les entrées sur les interfaces enx...) dont je veux bloquer l'accès à mon réseau principal.

Je me suis dit que le mieux était de faire cela au niveau du Pi qui me sert aussi de relais Wifi.

Merci pour vos conseils
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

Bonjour,

Je pense avoir réussi à faire ce que je voulais, donc merci aux deux personnes qui m'ont répondu pour les indications de direction. Par contre, j'ai bien modifié mes configs : les réseaux sont maintenant tous gérés par Network Manager (avant le point d'accès wifi était fait avec RaspAP).

Comme me l'a indiqué @Zargos, j'ai bloqué le range d'IP sources au lieu de bloquer les interfaces.

A+
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Perso j'aurais géré cela via des VLAN plutot que des règles de routage, je trouve ça plus propre.
Ta location aurait eu son propre réseau, bien séparé du reste.
Avec une règle de routage simple dans ton PI principal te permettrait de gérer les interactions entre sous réseaux

Si ton probleme est résolu, pense à cocher "accepter cette réponse"
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

piratebab a écrit : 04 oct. 2024, 09:53 Perso j'aurais géré cela via des VLAN plutot que des règles de routage, je trouve ça plus propre.
Ta location aurait eu son propre réseau, bien séparé du reste.
Avec une règle de routage simple dans ton PI principal te permettrait de gérer les interactions entre sous réseaux

Si ton probleme est résolu, pense à cocher "accepter cette réponse"
Salut,

C'est presque ce qui est fait.
Mais dans la location, il y a deux prises Ethernet, une sur laquelle est branché le Rasperry PI / Point d'accès Wifi et l'autre ou l'on peut toujours se connecter avec un cable réseau (pour avoir la vitesse de la fibre par exemple).
C'est pour cela qu'au départ, j'essayais de bloquer au niveau des deux interfaces USB-Ethernet du "PI principal" qui brassent les deux prises Ethernet de la location.

Donc si tu veux, pour la location, il y a deux réseaux distincts, le Wifi et l'Ethernet (et le top, c'est qu'ils communiquent entre eux, c'est transparent pour quelqu'un qui ne regarde pas les adresses IP).

Problème resolu donc.

A+
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

J'avais commencer comme toi, avec un RPI (initialement c'était même une pandaboard).
Mais maintenant que j'ai la fibre, je suis en train de tout remplacer pour de petits switches manageable 1 Gb de chez zyxel.
J'en ai même récupéré 1 d'occase en POE pour les caméras IP.
Les vlan me simplifient grandement le câblage, surtout lorsque j'ai de nouvelles idée (et le budget) pour modifier mon réseau.
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

piratebab a écrit : 07 oct. 2024, 11:42 J'avais commencer comme toi, avec un RPI (initialement c'était même une pandaboard).
Mais maintenant que j'ai la fibre, je suis en train de tout remplacer pour de petits switches manageable 1 Gb de chez zyxel.
J'en ai même récupéré 1 d'occase en POE pour les caméras IP.
Les vlan me simplifient grandement le câblage, surtout lorsque j'ai de nouvelles idée (et le budget) pour modifier mon réseau.
Bonjour,

Je comprends mieux ce que tu voulais dire par VLAN, et effectivement, un switch manageable simplifirait la chose, je n'y avais pas trop pensé, j'étais resté sur les PI.
Je vais regarder s'il y a un appareil qui rentrerait dans le coffret Vdi.

A+
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

En bricolant un peu, tu dois pouvoir gérer tes Vlan via les RPI.
Mon routeur derrière a box gére aussi les Vlan (sous openwrt), et je vais aussi passer la liaison internet d'une RPI avec 2 connexions virtuelles pour la connecter à 2 VLAN.
C'est le temps qui me manque ...
andresayang
Membre
Membre
Messages : 18
Inscription : 03 oct. 2024, 09:34
Status : Hors-ligne

Salut,

Et bien en fait, j'ai bien réfléchi: je viens de suivre tes conseils et commander 1 Switch mangeable 5 ports (21 euros). J'ai regardé dans mon boitier vdi, j'ai la place pour le mettre.
Je vais libérer le Pi pour servir à autre chose (media server).

Merci pour les conseils et a+
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Perso je suis resté simple, je n'ai pas de VLAN 1 pour l'administration comme recommandé partout.
Répondre