Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的:A、内核参数,B、防火墙,需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping。
具体的配置方法如下:
A:内核参数设置
允许ping值为0,不允许ping设为1:
#echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all #临时禁止
在/etc/sysctl.conf文件中加入:net.ipv4.icmp_echo_ignore_all=1,sysctl -p生效更改 #永久禁止
B:iptables设置(注:此处的方法的前提是内核配置是默认值,也就是没有禁止Ping)
iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP #0/0代表任何网段任何IP
允许PING设置
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT