Je suis en train d'essayer de configurer une passerelle sous linux debian avec iptables.
En lisant a droite a gauche, j'ai reussi a faire mes regles mais je n'en suis pas satifait.
eth0 et l'interface connectee a internet et eth1 l'interface sur mon reseau prive.
Ce qui cloche :
par exemple j'ai des drops sur des acces a des pages http qui ne devrait pas avoir lieu :
May 17 12:09:03 gaia kernel: [IPTABLES DROP] : IN=eth1 OUT=eth0 SRC=192.168.10.100 DST=74.125.39.167 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=18794 DF PROTO=TCP SPT=3502 DPT=80 WINDOW=17160 RES=0x00 ACK FIN URGP=0
May 17 12:09:05 gaia kernel: [IPTABLES DROP] : IN=eth1 OUT=eth0 SRC=192.168.10.100 DST=74.125.39.167 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=19043 DF PROTO=TCP SPT=3501 DPT=80 WINDOW=17160 RES=0x00 ACK FIN URGP=0
May 17 12:09:06 gaia kernel: [IPTABLES DROP] : IN=eth1 OUT=eth0 SRC=192.168.10.100 DST=72.14.217.91 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=19102 DF PROTO=TCP SPT=3459 DPT=80 WINDOW=16760 RES=0x00 ACK FIN URGP=0
May 17 12:09:23 gaia kernel: [IPTABLES DROP] : IN=eth1 OUT=eth0 SRC=192.168.10.100 DST=74.125.39.167 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=19111 DF PROTO=TCP SPT=3502 DPT=80 WINDOW=17160 RES=0x00 ACK FIN URGP=0
May 17 12:09:25 gaia kernel: [IPTABLES DROP] : IN=eth1 OUT=eth0 SRC=192.168.10.100 DST=74.125.39.167 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=19113 DF PROTO=TCP SPT=3501 DPT=80 WINDOW=17160 RES=0x00 ACK FIN URGP=0
alors que j'ai bien une ligne pour autoriser le port 80 en sortie.
A l'inverse, je peut monter un tunnel VPN entre mon portable 192.168.10.100 et le boulot sur le port UDP 4500, ou alors intergoger un routeur sur un reseau externe sur le port 800, ca ne pose aucun probleme a mon firewall ...
Si quelqu'un peut prendre le temps de lire mes regles et de me dire ce qui cloche je lui en serait tres reconnaissant

D'avance merci
Juju
regles firewall :
#!/bin/sh
# Activation du forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_conntrack_ftp
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_nat_irc
modprobe iptable_filter
modprobe iptable_mangle
modprobe iptable_nat
# Nous vidons les chaines :
iptables -F
# Nous supprimons d'eventuelles chaines personnelles :
iptables -X
# Nous les faisons pointer par defaut sur DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
# Nous faisons de mê avec toutes les autres tables,
# Ã| avoir "nat" et "mangle", mais en les faisant pointer
# par déut sur ACCEPT. Ca ne pose pas de problès
# puisque tout est bloquéu niveau "filter"
iptables -t nat -F
iptables -t nat -X
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t mangle -F
iptables -t mangle -X
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
# Nous considéns que la machine elle mê est sû# et que les processus locaux peuvent communiquer entre eux
# via l'interface locale :
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Nous considéns que notre réau local est
# élement sûe qui n'est pas forcént vrai, d'ailleurs).
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A OUTPUT -o eth1 -j ACCEPT
# Translation d'adresses pour tout ce qui traverse la passerelle
# en sortant par ppp0
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# on accepte toute ce qui sort
#iptables -A OUTPUT -o eth0 -j ACCEPT
# Autorise le trafic sortant sur des connexions ouvertes
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Autorise le trafic entrant sur des connexions ouvertes
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# autoriser le ping
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
# FORWARDING
# Toutes les connexions qui sortent du LAN vers le Net
# sont acceptees
iptables -A FORWARD -i eth1 -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Seules les connexions deja etablies ou en relation avec
# des connexions etablies sont acceptees venant du Net vers le LAN
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
# WAN
#whois :
iptables -A OUTPUT -m state --state NEW -p tcp --dport nicname -j ACCEPT
# Autorisation des requetes DNS locales
iptables -A OUTPUT -o eth0 -p udp --sport 1024: --dport 53 -j ACCEPT
# ### acceptation du dns en entree ###
#
iptables -A INPUT -i eth0 --protocol udp --destination-port 53 -j ACCEPT
iptables -A INPUT -i eth0 --protocol tcp --destination-port 53 -j ACCEPT
# Autorisation des envois SMTP locaux
iptables -A OUTPUT -o eth0 -p tcp --dport 25 -j ACCEPT
# Autorisation SMTP en entree
iptables -A INPUT -i eth0 -p tcp --dport 25 -j ACCEPT
# serveru IMAPS
iptables -A INPUT -i eth0 -p tcp --dport 993 -j ACCEPT
#SSH depuis le Net
iptables -A INPUT -p tcp --dport ssh -i eth0 -j ACCEPT
iptables -A OUTPUT -p tcp --sport ssh -o eth0 -j ACCEPT
# autorisation divers protos :
iptables -A OUTPUT -p tcp --dport ftp -o eth0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -o eth0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 443 -o eth0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 110 -o eth0 -j ACCEPT
#Serveur web
iptables -A INPUT -p tcp --dport http -i eth0 -j ACCEPT
# Serveur ftp
iptables -A INPUT -p tcp --dport 20:21 -i eth0 -j ACCEPT
# rtorrent
iptables -A INPUT -p tcp --dport 6890:6999 -i eth0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 6890:6999 -o eth0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 8080 -o eth0 -j ACCEPT
#IPSec
iptables -A INPUT -p udp --dport 500 -s 193.251.56.190 -i eth0 -j ACCEPT
iptables -A OUTPUT -p udp --dport 500 -d 193.251.56.190 -o eth0 -j ACCEPT
# # activation des logs
#
iptables -N LOG_DROP
iptables -A LOG_DROP -j LOG --log-prefix '[IPTABLES DROP] : '
iptables -A LOG_DROP -j DROP
# ne pas loguer les partages win :
iptables -A INPUT -p udp --dport 137 -i eth0 -j DROP
#tout le reste est loggue
iptables -A FORWARD -j LOG_DROP
iptables -A INPUT -j LOG_DROP
iptables -A OUTPUT -j LOG_DROP
#Brouting IPV6
brctl addbr br0
ifconfig br0 up
brctl addif br0 eth0
brctl addif br0 eth1
ebtables -t broute -A BROUTING -p ! ipv6 -j DROP