说明:

* 在网络中允许外来的ping响应,有时会给服务器带来安全风险;

* Linux默认允许ping响应;

* 系统是否允许ping由2个因素决定(内核参数和防火墙),只有2个因素同时满足才能允许ping。


一、修改内核参数

  1. 临时生效:临时禁ping,服务器重启后失效

    echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all  //默认值是0

  2. 永久生效:修改文件/etc/sysctl.conf

    vi /etc/sysctl.conf

     net.ipv4.icmp_echo_ignore_all=1  //在最后添加此行

    sysctl -p                //使新配置立即生效


  如上设置后,本服务器还可以ping其它服务器



二、设置防火墙(内核参数默认情况下)

  利用iptables丢弃掉来自外网请求的ICMP包,达到禁Ping的效果

1.禁ping设置

 #iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP


2.解除禁ping

 #iptables -D INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP