Eu tenho essas regras no iptables:
/sbin/iptables -N LOGGING
/sbin/iptables -A INPUT -j LOGGING
/sbin/iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7
/sbin/iptables -A LOGGING -j DROP
Posso adicionar essas regras também ou devo mudar? Não tenho certeza, se eu duplicar os logs usando "A INPUT -j LOGGING" e "A INPUT -j LOG".
/sbin/iptables -A INPUT -j LOG
/sbin/iptables -A FORWARD -j LOG
Não, você não.
-N LOGGING
cria uma tabela personalizada chamadaLOGGING
. É apenas sua tabela personalizada, onde você pode colocar suas regras para agrupá-las. Embora seja chamadoLOGGING
, ele não faz nenhum registro por si só. Você nomeia de qualquer maneira, exceto para as tabelas e destinos existentes.Quando você o direciona com
-A INPUT -j LOGGING
ele, apenas diz ao netfilter para "entrar" nesta tabela. Agora ele "anda" da primeira regra até o final ou um destino final - comoACCEPT
ouDROP
, enquantoLOG
são alvos não finais. Ou seja, ele prosseguirá com as próximas regras após prosseguir com o destino não finalizador. Portanto,-j LOG
são o destino LOG real, que faz o registro.Mas o problema real que você pode ter aqui se o exemplo que você forneceu estiver completo é
-A LOGGING -j DROP
parte. Ele não inclui nenhuma correspondência e o destino é definido comoDROP
. Não ter nenhuma correspondência inclui todos os pacotes que ele passa . Portanto, ele apenas descartará todos os pacotes após o registro. Se essa foi sua intenção, então tudo bem. Mas geralmente isso é feito com algum tipo de correspondência (como IPs de origem/destino, portas TCP/UDP, etc).