Sådan blokeres PMP ICMP-anmodninger til Linux-systemer


Nogle systemadministratorer blokerer ofte ICMP-meddelelser til deres servere for at skjule Linux-boksene for omverdenen på uslebne netværk eller for at forhindre en form for IP-oversvømmelse og benægtelse af serviceangreb.

Den mest enkle metode til at blokere ping-kommando på Linux-systemer er ved at tilføje en iptables-regel, som vist i nedenstående eksempel. Iptables er en del af Linux-kernenetfilter og er normalt installeret som standard i de fleste Linux-miljøer.

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

En anden generel metode til at blokere ICMP-meddelelser i dit Linux-system er at tilføje nedenstående kernevariabel, der vil slippe alle ping-pakker.

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

For at gøre ovenstående regel permanent, tilføj følgende linje til /etc/sysctl.conf-filen og anvend derefter reglen med sysctl-kommandoen.

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

I Debian-baserede Linux-distributioner, der leveres med UFW-applikationsfirewall, kan du blokere ICMP-meddelelser ved at tilføje følgende regel til /etc/ufw/before.rules-filen som illustreret i nedenstående uddrag.

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

Genstart UFW-firewall for at anvende reglen ved at udstede nedenstående kommandoer.

# ufw disable && ufw enable

I CentOS eller Red Hat Enterprise Linux-distribution, der bruger Firewalld-grænsefladen til at styre iptables-regler, skal du tilføje nedenstående regel for at droppe ping-meddelelser.

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

For at teste, om firewallreglerne blev anvendt med succes i alle de tilfælde, der er diskuteret ovenfor, skal du prøve at pinge din Linux-maskines IP-adresse fra et eksternt system. I tilfælde af at ICMP-meddelelser er blokeret for din Linux-boks, skal du modtage en "Request timeed out" eller "Destination Host unreachable" -meddelelser på fjernmaskinen.