Pesquisa de site

Como bloquear solicitações ICMP de ping para sistemas Linux


Alguns administradores de sistema muitas vezes bloqueiam mensagens ICMP em seus servidores para ocultar as caixas Linux para o mundo exterior em redes irregulares ou para evitar algum tipo de inundação de IP e ataques de negação de serviço.

O método mais simples para bloquear o comando ping em sistemas Linux é adicionar uma regra iptables, conforme mostrado no exemplo abaixo. Iptables faz parte do netfilter do kernel Linux e, geralmente, é instalado por padrão na maioria dos ambientes Linux.

iptables -A INPUT --proto icmp -j DROP
iptables -L -n -v  [List Iptables Rules]

Outro método geral de bloquear mensagens ICMP em seu sistema Linux é adicionar a variável de kernel abaixo que eliminará todos os pacotes de ping.

echo “1” > /proc/sys/net/ipv4/icmp_echo_ignore_all

Para tornar a regra acima permanente, anexe a seguinte linha ao arquivo /etc/sysctl.conf e, posteriormente, aplique a regra com o comando sysctl.

echo “net.ipv4.icmp_echo_ignore_all = 1” >> /etc/sysctl.conf 
sysctl -p

Em distribuições Linux baseadas em Debian que vêm com firewall de aplicativo UFW, você pode bloquear mensagens ICMP adicionando a seguinte regra ao arquivo /etc/ufw/before.rules, conforme ilustrado no trecho abaixo.

-A ufw-before-input -p icmp --icmp-type echo-request -j DROP

Reinicie o firewall UFW para aplicar a regra, emitindo os comandos abaixo.

ufw disable && ufw enable

Na distribuição CentOS ou Red Hat Enterprise Linux que usa a interface Firewalld para gerenciar regras de iptables, adicione a regra abaixo a descartar mensagens de ping.

firewall-cmd --zone=public --remove-icmp-block={echo-request,echo-reply,timestamp-reply,timestamp-request} --permanent	
firewall-cmd --reload

Para testar se as regras de firewall foram aplicadas com sucesso em todos os casos discutidos acima, tente fazer ping no endereço IP da sua máquina Linux a partir de um sistema remoto. Caso as mensagens ICMP sejam bloqueadas em sua máquina Linux, você deverá receber mensagens “Tempo limite da solicitação esgotado” ou “Host de destino inacessível” na máquina remota.