Sou iniciante em iptables e redes, então, desculpe-me por essas perguntas de iniciante.
Encontrei na Internet parte da filtragem de pacotes malformados:
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL SYN -m state --state NEW -j RETURN
Mas até onde eu sei, o primeiro (novo) pacote deve conter flag SYN e esta regra impedirá novas conexões? Ou estou entendendo mal isso?
Além disso, o que ocorrerá após a aplicação das seguintes regras?
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL RST,ACK,PSH
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL RST,ACK,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL RST,ACK,PSH,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL FIN,PSH,ACK,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL ACK,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL ACK,URG,FIN
Se eu estiver certo, não há ação? O iptables verificará os sinalizadores acima e passará para as próximas regras, certo?
Responder1
O segundo exemplo não tem ação, portanto não faz nada exceto acumular estatísticas.
iptables -xvn -L tcpchk
ALL SYN corresponde às conexões estabelecidas e inicia a conexão fora da cadeia tcpchk e de volta à sua cadeia pai, presumivelmente INPUT. O-j RETORNARdevolver o pacote ao pai.
A regra não causará mau funcionamento porque na verdade não descarta ou rejeita nada.