Bóson Treinamentos em Ciência e Tecnologia

Firewall iptables no Linux – Parte 07: O Target REJECT

como bloquear pacotes no iptables com 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):

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:

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:

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

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

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

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.

 

Sair da versão mobile