临时禁ping
将/proc/sys/net/ipv4/icmp_echo_ignore_all文件里面的0临时改为1,从而实现禁止ICMP报文的所有请求,达到禁止Ping的效果,网络中的其他主机Ping该主机时会显示“请求超时”,但该服务器此时是可以Ping其他主机的。
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
永久禁ping
vim /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_all = 1
sysctl -p
#启用ping
net.ipv4.icmp_echo_ignore_all = 0
IPTABLES防火墙禁ping
置禁ping
iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP
启用ping
iptables -D INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP
#参数备注
-A:添加防火墙规则.
INPUT:入站规则.
-p icmp:指定包检查的协议为ICMP协议.
--icmp-type 8:指定ICMP类型为8.
-s:指定IP和掩码,“0/0”表示此规则针对所有IP和掩码.
-j:指定目标规则,即包匹配则应到做什么,"DROP"表示丢弃.
注意事项
通过修改配置方式禁止ping后,内部ping也将失效,通过防火墙方式禁止ping后,可以ping自己内部网络。