Iptables -LINUX (à l'aide !)

Fermé
Gosth35 - 10 mai 2005 à 15:20
kmf31 Messages postés 1564 Date d'inscription mercredi 30 mars 2005 Statut Contributeur Dernière intervention 22 juin 2007 - 10 mai 2005 à 17:43
Bonjour à tous
Je vous écrit dans un grand moment de désespoire ^^

J'ai une station Linux (RedHat8) avec 2 cartes réseau (eth0 et eth1). Je veux faire un pont filtrant entre 2 réseaux locaux ...


Je commence donc par créer un script pour le pont:

<=============================================>
# !/bin/sh
#
# description: Fonction Bridge
#chkconfig 2345 90 10
. /etc/rc.d/init.d/functions
RETVAL=0
case "$1" in

start)
echo "Démarrage du pont"
brctl addbr ponteth
brctl stp ponteth off
brctl addif ponteth eth0
brctl addif ponteth eth1
ifconfig eth0 0.0.0.0 up
ifconfig eth1 0.0.0.0 up
ifconfig ponteth 192.168.20.2 netmask 255.255.255.0 broadcast 192.168.20.255 up
route add default gw 192.168.20.1
touch /var/lock/subsys/bridge
RETVAL=$?
echo
;;
<=============================================>




Ce script fonctionne (les 2 réseaux communiquent). Mais je dois mettre en place un filtrage, grâce au script suivant (placé après la ligne "route add default gw 192.168.20.1"):
<=============================================>
PATH="/usr/sbin:$PATH"
iptables -F
iptables -X
iptables -A FORWARD -j DROP
<=============================================>
Cependant, la communication sur le pont passe toujours, alors que tous les paquets passant par le pont devraient être effacés (DROP)



Quand j'utilise le script suivant, la station Linux est bien déconnectée (INPUT et OUTPUT), mais le pont fonctionne toujours
<=============================================>
PATH="/usr/sbin:$PATH"
iptables -F
iptables -X
iptables -A FORWARD -j DROP
iptables -A INPUT -j DROP
iptables -A OUTPUT -j DROP
<=============================================>






J'ai donc quelques questions à vous poser (je débute depuis 2 mois sous Linux):
> Ma syntaxe "iptables -A FORWARD -j DROP" est-elle correcte ? (je pense que oui)
> Peut-on mettre le script des iptables dans le même fichier que le script du pont (brctl) ?!
> Sinon, il y a t'il un fichier précis où l'on doit mettre le script des iptables ?

Merci à ceux qui passerons du temps à me répondre.
Gosth35

Ps: j'accepte de me faire fouetter par celui qui a une solution
A voir également:

2 réponses

brupala Messages postés 111008 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 13 février 2025 13 929
10 mai 2005 à 16:55
Salut,
A priori , je dirais que les commandes iptables ne peuvent s' appliquer à des interfaces pontées, seulement à des interfaces routées, mais je te renvoie sur le forum linux où tu auras surement de meilleures réponses.
0
kmf31 Messages postés 1564 Date d'inscription mercredi 30 mars 2005 Statut Contributeur Dernière intervention 22 juin 2007 501
10 mai 2005 à 17:43
Je crois brupala a raison, il semble il faut avoir un autre truc pour que ca marche: ebtables c.-a-d.: un noyau 2.6 ou un patch dans le noyau 2.4 ==> Tu dois recompiler et installer un autre noyau sur ton Redhat 8.0. Peut-etre il vaut mieux reinstaller Fedora core 3 ou tout est peut-etre prevu (?).
Avec ca, ca devrait fonctionner avec "iptables" comme tu l'essaies maintenant. Regarde ici:
http://ebtables.sourceforge.net/
Ici tu trouves des explications et les patchs pour les derniers 2.4 (2.4.28, 2.4.29, ...). Si tu mets directment un noyau 2.6 (le dernier est 2.6.11.8) c'est deja contenu dans ce noyau, il faut seulement activer les bonnes options et les bons modules pendant la compilation.


Apart ca un petit truc: je mettrais aussi le comportement par defaut ("default policy") par:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

Peut-etre le "-P" est important ici. Apres tu mettras la suite des regles "-A".
0