pour supprimer les chaînes utilisateurs, mais je n'en ai vu aucune
[code]
iptables -A INPUT -s 192.168.0.0/255.255.255.128 -j ACCEPT
iptables -A OUTPUT -s 192.168.0.0/255.255.255.128 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/255.255.255.128 -j ACCEPT
iptables -A INPUT -s 192.168.0.192/255.255.255.192 -j ACCEPT
iptables -A OUTPUT -s 192.168.0.192/255.255.255.192 -j ACCEPT
iptables -A FORWARD -s 192.168.0.192/255.255.255.192 -j ACCEPT
[/code]
Une adresse ip n'appartient pas à une interface, donc il est préférable de faire le filtrage sur eth0 ...
[code]
iptables -A FORWARD -i br0 -o wlan0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i wlan0 -o br0 -m state --state ESTABLISHED,RELATED -j ACCEPT
[/code]
Tu mentionnes les états ESTABLISHED et RELATED pour certaines interfaces, alors que ces états ne peuvent être obtenus qu'à la suite d'un état NEW.
Donc autant les autoriser pour toutes les interfaces, en plus cela allégera le code de ton script.
[code]
iptables -A INPUT -p tcp --sport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A FORWARD -p tcp --sport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A FORWARD -p tcp --dport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
[/code]
Pourrait être remplacé par :
[code]
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i tap0 -p tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT (serveur SSH local)
iptables -A OUTPUT -o tap0 -p tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT (serveur SSH distant)
iptables -A FORWARD -p tcp --syn --dport 22 -m conntrack --ctstate NEW -j ACCEPT
[/code]
Après tu peux enlever les états NEW et --syn si tu t'assures que les paquets arrivant jusque là ne sont pas des scans.
[code]
iptables -A INPUT -p icmp -m icmp --icmp-type 4 -j ACCEPT
[/code]
C'est utilisé pour couper les connexions en ralentissant le traffic (source quench)
[code]
iptables -A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
[/code]
Si tu autorises les connexions de types ESTABLISHED, pas besoin de le préciser car le echo-reply est dans cet état là.
J'ai pas vu de règles pour ce qui est de la chaîne FORWARD et OUTPUT pour le type icmp, mais j'ai dû les louper.
[code]
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
[/code]
Il est intéressant de bloquer les scans à l'origine en plus, paquets INVALID, NEW not SYN paquets, SYN flood. De plus les scanners s'adaptent à la limitation engendrée par les firewalls
[code]
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
[/code]
J'aurais plutôt limité la taille des paquets echo-request avec une limitation comme toi sur le débit.
pour supprimer les chaînes utilisateurs, mais je n’en ai vu aucune
iptables -A INPUT -s 192.168.0.0/255.255.255.128 -j ACCEPT
iptables -A OUTPUT -s 192.168.0.0/255.255.255.128 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/255.255.255.128 -j ACCEPT
iptables -A INPUT -s 192.168.0.192/255.255.255.192 -j ACCEPT
iptables -A OUTPUT -s 192.168.0.192/255.255.255.192 -j ACCEPT
iptables -A FORWARD -s 192.168.0.192/255.255.255.192 -j ACCEPT
Une adresse ip n’appartient pas à une interface, donc il est préférable de faire le filtrage sur eth0 …
iptables -A FORWARD -i br0 -o wlan0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i wlan0 -o br0 -m state --state ESTABLISHED,RELATED -j ACCEPT
Tu mentionnes les états ESTABLISHED et RELATED pour certaines interfaces, alors que ces états ne peuvent être obtenus qu’à la suite d’un état NEW.
Donc autant les autoriser pour toutes les interfaces, en plus cela allégera le code de ton script.
iptables -A INPUT -p tcp --sport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A FORWARD -p tcp --sport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
iptables -A FORWARD -p tcp --dport 22 -s 192.168.0.128/255.255.255.192 -j ACCEPT
Pourrait être remplacé par :
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i tap0 -p tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT (serveur SSH local)
iptables -A OUTPUT -o tap0 -p tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT (serveur SSH distant)
iptables -A FORWARD -p tcp --syn --dport 22 -m conntrack --ctstate NEW -j ACCEPT
Après tu peux enlever les états NEW et --syn si tu t’assures que les paquets arrivant jusque là ne sont pas des scans.
iptables -A INPUT -p icmp -m icmp --icmp-type 4 -j ACCEPT
C’est utilisé pour couper les connexions en ralentissant le traffic (source quench)
iptables -A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
Si tu autorises les connexions de types ESTABLISHED, pas besoin de le préciser car le echo-reply est dans cet état là.
J’ai pas vu de règles pour ce qui est de la chaîne FORWARD et OUTPUT pour le type icmp, mais j’ai dû les louper.
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
Il est intéressant de bloquer les scans à l’origine en plus, paquets INVALID, NEW not SYN paquets, SYN flood. De plus les scanners s’adaptent à la limitation engendrée par les firewalls
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
J’aurais plutôt limité la taille des paquets echo-request avec une limitation comme toi sur le débit.