O iptables -p proto -m proto é redundante?

2

Eu continuo vendo "-p tcp -m tcp" em todo o lugar, mas parece redundante.

Por que o '-m' se o '-p' já corresponde ao protocolo?

    
por alinh 24.09.2014 / 16:40

1 resposta

1

Parece redundante em primeiro lugar, porque o iptables já carrega automaticamente alguns dos módulos. Com o -p você especifica o protocolo, onde -m você cria um argumento de correspondência que verificará os atributos específicos de um pacote TCP.

A documentação especifica que o uso do protocolo ( -p ) é suficiente para carregar todos os itens correspondentes. Fonte e citando:

...These matches are loaded implicitly in a sense, just as the UDP and ICMP matches are loaded implicitly. The other matches will be looked over in the continuation of this section, after the TCP match section.

O uso dessa correspondência faz sentido quando você precisa filtrar várias portas e sabe que a correspondência multiport não é carregada da mesma maneira que a tcp one. Exemplo:

# iptables -I INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT

tl; dr: Eles não são redundantes. É apenas uma forma abreviada da mesma forma que você não precisa declarar a tabela padrão ( -t filter ) para cada regra.

    
por 07.04.2015 / 20:32

Tags