xiaoxiao 发表于 2015-1-25 15:18:48

Linux / CentOS系统如何禁ping

本帖最后由 xiaoxiao 于 2017-2-7 14:58 编辑


方法一:以root账户进入系统,然后编辑文件icmp_echo_ignore_all
vi /proc/sys/net/ipv4/icmp_echo_ignore_all
0 表示允许ping
1 表示禁止ping

也可以直接运行以下命令
禁ping:echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all
可ping:echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all
此上两条命令的效果实时生效,可以用另外的机器ping来测试是否生效。以上仅为临时性禁ping 重启后会失效。
如果想要重启过后也不能ping可以做如下操作,在开机自启动内增加一条
vi /etc/rc.local
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
另外可以在配置文件 /etc/sysctl.conf 文件中增加一行
net.ipv4.icmp_echo_ignore_all=1

方法二:使用iptables禁止ping
这下是别人不能ping你,你也不能ping别人,其实使用iptable最简单
iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP
iptables -A INPUT -p icmp --icmp-type 0 -s 0/0 -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type 0 -s 192.168.29.1 -j DROP
iptables -A OUTPUT -p icmp --icmp-type 8 -s 192.168.29.1 -j ACCEPT

方法三:使用iptables禁止icmp
iptables -A INPUT -p icmp -j DROP
CentOS的话记得别忘记保存!
service iptables save

或者直接在/etc/sysconfig/iptables里添加一条:
-A INPUT -p icmp -j DROP
之后重启下iptables服务生效:
service iptables restart

之后如果需要启用的话:
iptables -A INPUT -p icmp -j ACCEPT





页: [1]
查看完整版本: Linux / CentOS系统如何禁ping