IPtables: quando usar -m em uma regra?

3

match = -m matchname [opções por correspondência]
Mas isso me confunde. Aqui está um exemplo:

iptables -A INPUT -p tcp -m multiport --dports 23,79 --tcp-flags ALL SYN -m recent --update --seconds 180 -m comment --comment "SYN" -j DROP

Alguém pode me explicar a teoria por trás dele, porque eu não tenho que usar -m antes de -tcp-flags (talvez eu deveria?), assim:

iptables -A INPUT -p tcp -m multiport --dports 23,79 -m --tcp-flags ALL SYN -m recent --update --seconds 180 -m comment --comment "SYN" -j DROP    

Seria mais sensato para mim se fosse escrito assim:

iptables -A INPUT -p tcp -m tcp --tcp-flags ALL SYN -m multiport --dports 23,79 -m recent --update --seconds 180 -m comment --comment "SYN" -j DROP

E por que devo usar -m para comentar? Eu vejo em todos os lugares, mas gostaria de saber por que e não outra coisa. Eu estou questionando isso um pouco porque não é um jogo, então isso é um pouco estranho. Obrigado.

    
por Kris 20.04.2012 / 22:19

1 resposta

6

-m é usado para adicionar extensões à correspondência regular. normalmente você não pode usar --dports para especificar várias portas. -m multiport adiciona essa extensão. se você precisar corresponder apenas em uma única porta (ou não corresponder em uma porta), não há motivo para -m multiport . Existe uma seção "MATCH EXTENSIONS" da página do manual iptables que descreve quais outras extensões podem ser usadas. "state" é muito comum, o que permite combinar o estado da conexão em que o pacote está, como NEW, ESTABLISHED, RELATED.

    
por 20.04.2012 / 22:28

Tags