一招就能搞定linux禁止ping和开启

Linux系统默认是允许ping的,系统是否允许ping是靠内核参数和防火墙这两个地方同时允许才能ping,如果其中有一是禁止ping,那就没法ping的

具体的配置参数如下:

内核参数Ping设置

临时PING配置

#临时允许ping
echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all

#临时禁止ping
echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all

永久PING的配置

#修改配置文件sysctl.conf

vi /etc/sysctl.conf

#永久允许ping
net.ipv4.icmp_echo_ignore_all=0

#永久禁止ping
net.ipv4.icmp_echo_ignore_all=1

配置文件里已有这行,那直接修改=号的值(0表示允许,1表示禁止)

#使新配置生效

sysctl -p

防火墙设置(注:此处的方法的前提是内核配置是默认值,也就是没有禁止Ping)

这里以Iptables防火墙为例,其他防火墙操作方法参考防火墙的官方文档。

允许PING设置

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

也可以临时停止防火墙操作

service iptables stop

禁止PING设置

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