iptables não caindo por IP e porta?

3

Eu tenho cerca de 4 endereços IP que continuam batendo aleatoriamente em uma porta da minha rede que eu gostaria de bloquear. Então eu adicionei as regras como esta ao meu roteador OpenWRT:

iptables -I INPUT -s FIRST_PUBLIC_IP -p tcp --dport 32400 -j DROP
iptables -I INPUT -s SECOND_PUBLIC_IP -p tcp --dport 32400 -j DROP
iptables -I INPUT -s THIRD_PUBLIC_IP -p tcp --dport 32400 -j DROP
iptables -I INPUT -s FOURTH_PUBLIC_IP -p tcp --dport 32400 -j DROP

Então eu também tenho essa regra que escreve no log sempre que houver uma conexão nessa porta

iptables -I FORWARD -p tcp --dport 32400 -m limit --limit 1/min -j LOG --log-prefix "PLEX Connection "

Então, o que eu pensei que estaria acontecendo é se 1 dos 4 endereços IP listados tentasse se conectar naquela porta, eles seriam descartados e nunca iriam para a cadeia de encaminhamento. Todo o resto acionaria essa regra de registro.

No entanto, esses endereços IP ainda são registrados por meio da regra FORWARD. Eles estão vivos agora e os tornaram permanentes na reinicialização. O que eu negligenciei?

    
por Nathan 06.11.2016 / 01:42

1 resposta

6

Pacotes que navegam na tabela FORWARD não atingem a tabela INPUT. Então, se seus pacotes estão realmente atingindo a tabela FORWARD, eles provavelmente estão sendo usados ou algo similar - o que é certo, mas isso significa que você não pode usar as regras INPUT para afetá-los.

Há um ótimo diagrama de referência - difícil de ler, mas ótimo para referência - na entrada do Netfilter na Wikipedia: .

Mas eu suspeito que você esteja fazendo alguns pacotes, e é por isso que não é imediatamente óbvio. Considere adicionar suas regras - como é o caso de kludgey - no PreRouting in nat ou na tabela FORWARD, e veja a mudança de comportamento.

Boa sorte, e por favor, expanda sua pergunta se precisar.

    
por 06.11.2016 / 01:55