Mon script iptable (surement des erreurs) - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 11-05-2004 à 17:10:09
tu oublie de mettre les polices par défaut a DROP pour tes règles
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
Marsh Posté le 11-05-2004 à 17:16:12
ça semble correct si tu rajoutes le drop par défaut
tu fermes aucun port?
Marsh Posté le 11-05-2004 à 17:17:59
Disons que je veux autoriser toutes les connexions sortante et bloquer toutes les connexion entrantes
Marsh Posté le 11-05-2004 à 17:18:49
ya juste un truc qui me gêne moi, c'est la définition des ip du réseau local ; tu es sur que iptables accepte cette notation ?
normalement, c'est -s adresse_ip/masque_sous_reseau
et là, j'ai l'impression que tu définis une plage d'ip (ce qui serais plutôt l'option range mais je crois pas qu'elle soit dispos dans toute les version d'iptable)
Marsh Posté le 11-05-2004 à 17:26:14
hmm tu as raison faudrait remplacer par ca je pense : -m iprange --src-range
je corrige dans le message plus haut
Autrement mes port sont bien fermés avec le script ?
Marsh Posté le 11-05-2004 à 17:30:34
en entrée oui (du fait du DROP)
en sortie non
sinon, n'aurais tu pas intérêt à remplacer NEW, ESTABLISHED,RELATED par !INVALID ?
Marsh Posté le 11-05-2004 à 17:34:35
Mjules a écrit : en entrée oui (du fait du DROP) |
Je dois t'avouer ne pas connaitre la difference entre les deux (je suis débutant avec iptables)
Autrement penses tu que mon systeme de routage en fonction de l'ip va me permettre de router sur la freebox 1 ou 2 correctement ?
Marsh Posté le 11-05-2004 à 19:57:13
man iptables
Citation : --state état |
le ! devant l'option signifie "tout ce qui ne suit pas cette option" : !INVALID est donc égal à NEW,ESTABLISHED,RELATED
ça améliore juste la lisibilité
Marsh Posté le 11-05-2004 à 16:55:16
Je vous explique, j'ai deux freebox reliés sur une interface eth1 et eth2, l'interface eth0 (local) est relié à mon switch qui a 40 machines derriere qui doivent acceder a internet.
J'ai donc tenté de fair ce script iptables pour router le tout
J'ai defini deux plages d'ip (IPBOX1 et IPBOX2) qui devraient me permetre de router vers la premiere ou la seconde freebox en fonction du l'ip du pc qui tente de ce connecter a internet
Je vous colle le script dans l'état, si vous voyez de grosse erreurs, merci de me les signaler (je débute avec iptables et c'est assé délicat quand meme)
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
# Local
LOCAL="eth0"
# Freebox n° 1
BOX1="eth1"
# Freebox n° 2
BOX2="eth2"
# Plage IP ce connectant à la FreeBox N°1
IPBOX1="192.168.0.1-192.168.0.30"
# Plage IP ce connectant à la FreeBox N°2
IPBOX2="192.168.0.31-192.168.0.250"
# Activation du forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# Autorisation pour l'interface locale
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Restreindre le nat sur IPBOX1 vers la freebox N°1
iptables -t nat -A POSTROUTING -m iprange --src-range $IPBOX1 -o $BOX1 -j MASQUERADE
# Restreindre le nat sur IPBOX2 vers la freebox N°1
iptables -t nat -A POSTROUTING -m iprange --src-range $IPBOX2 -o $BOX2 -j MASQUERADE
# Autoriser les connexions IPBOX1 de LOCAL vers BOX1
iptables -A FORWARD -i $LOCAL -m iprange --src-range $IPBOX1 -o $BOX1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Autoriser les connexions IPBOX2 de LOCAL vers BOX2
iptables -A FORWARD -i $LOCAL -m iprange --src-range $IPBOX2 -o $BOX1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Autoriser uniquement les connexions déjà étabkies ou en relation venant de BOX1 vers LOCAL
iptables -A FORWARD -i $BOX1 -m iprange --src-range $IPBOX1 -o $LOCAL -m state --state ESTABLISHED,RELATED -j ACCEPT
# Autoriser uniquement les connexions déjà étabkies ou en relation venant de BOX2 vers LOCAL
iptables -A FORWARD -i $BOX2 -m iprange --src-range $IPBOX2 -o $LOCAL -m state --state ESTABLISHED,RELATED -j ACCEPT
Merci de votre aide
Message édité par aopenrix le 11-05-2004 à 17:27:57