Firewall iptables no Linux – Parte 07: O Target REJECT

Target REJECT no iptables – Bloquear pacotes

O target REJECT é empregado para que seja possível rejeitar (bloquear) pacotes no firewall.

Vejamos agora alguns exemplos do uso do target REJECT. Para isso usaremos algumas mensagens ICMP para visualizar a resposta do firewall ao remetente dos pacotes que serão bloqueados.

O target REJECT só é válido nas cadeias INPUT, OUTPUT e FORWARD, e possui uma opção, –reject-with, a qual exploraremos nos exemplos sugeridos.

Primeiro, vamos limpar a regras atuais do firewall, cujo IP é 192.168.1.101, para que não interfiram em nossos exemplos:

# iptables -F

Vamos também alterar a regra padrão da chain INPUT para ACCEPT:

# iptables -P INPUT ACCEPT

E agora vamos enviar pacotes icmp usando o ping e testar a conectividade entre as máquinas (usarei um cliente WIndows, de IP 192.168.1.105, via prompt de comandos):

Usando o target REJECT no iptables

O ping está operando normalmente. Vamos então criar algumas regras que bloqueiem o ping no servidor e que emitam de volta ao remetente (no caso, a máquina Windows) mensagens específicas. Apos testar cada regra, limpe a cadeia com iptables -F.

Regra #1: Usando um REJECT simples, sem especificar nenhuma mensagem de retorno:

# iptables -A INPUT -s 192.168.1.105 -j REJECT

Testando a partir do cliente:

Target REJECT no Linux iptables

Observe que o ping foi bloqueado no servidor e foi emitida uma mensagem padrão do REJECT “Porta de destino inacessível” ao cliente de IP 192.168.1.105.

Regra #2: Emitindo a mensagem “Rede de destino inacessível” com o REJECT:

# iptables -A INPUT -s 192.168.1.105 -j REJECT --reject-with icmp-net-unreachable

Testando a partir do cliente:

Aplicar o target reject no iptables firewall

O parâmetro –reject-with deve sempre vir após a palavra REJECT.

Regra #3: Emitindo a mensagem “Host de destino inacessível” com o REJECT:

# iptables -A INPUT -s 192.168.1.105 -j REJECT --reject-with icmp-host-unreachable

iptables e o target reject - rejeitar pacotes

Regra #4: Emitindo a mensagem padrão “Porta de destino inacessível” com o REJECT:

# iptables -A INPUT -s 192.168.1.105 -j REJECT --reject-with icmp-port-unreachable

rejeitar pacotes com firewall iptables

Note que essa é a mensagem padrão do REJECT, que é emitida se nenhuma outra for especificada com –reject-with.

Regra #5: Emitindo a mensagem padrão “Protocolo de destino inacessível” com o REJECT:

# iptables -A INPUT -s 192.168.1.105 -j REJECT --reject-with icmp-proto-unreachable

rejeitar pacotes no linux com iptables

Existem ainda algumas outras mensagens icmp que podem ser emitidas, como icmp-tcp-reset, icmp-host-prohibited, icmp-network-prohibited e icmp-admin-prohibited. Consulte a documentação do netfilter para maiores detalhes.

 

Sobre Fábio dos Reis (1206 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

Escreva um comentário

Seu e-mail não será divulgado


*