
Pelo que entendi, o iptables funciona na camada de transporte (camada 4) e qualquer filtragem de pacotes que aconteça é baseada nos protocolos IP da camada 4, como tcp e udp. Então, se inserirmos protocolos como esp, gre e l2tp emtabelas de ip -popção, isso faz algum sentido? Podemos filtrar pacotes com base em protocolos de camada 2/3 usando iptables? Caso contrário, como o iptables filtra pacotes com base em protocolos icmp?
Novo no iptables e ainda estou aprendendo. Obrigado!
Responder1
iptables
suporta filtragem nas camadas de enlace de dados, rede e transporte.
A -p
opção (protocolo) não está especificamente limitada aos protocolos da camada 4. Opágina de manualmenciona icmp e esp especificamente. Eu sei que gre também é suportado (como 'gre' ou protocolo '47'). O protocolo especificado pode ser passado para esta opção por nome ou por seu número inteiro especificado em /etc/protocols
. Não tenho certeza se todos os protocolos nesta lista são suportados pelo iptables.
Se o -p ou --protocol foi especificado e se e somente se uma opção desconhecida for encontrada, o iptables tentará carregar um módulo de correspondência com o mesmo nome do protocolo, para tentar disponibilizar a opção.
Esta sintaxe de 'módulo de correspondência' é o módulo de correspondência de pacotes estendido e seria especificada usando as -m --match
opções.
Você pode encontrar uma lista das extensões suportadas aqui:extensões iptables. Uma lista dos módulos do kernel do netfilter disponíveis está localizada em /lib/modules/$(uname -r)/kernel/net/netfilter
.