发布时间:2020-5-27 17:52:41 来源:
纵横云
有时候根据需要(如防止攻击),Linux服务器管理员可限制服务器禁止其它用户Ping。同时又保证Linux服务器又可以Ping其它服务器。
本文提供两种禁Ping方法
1、通过修改配置文件 这个方法需要ROOT权限,且设置成功后别人无法Ping本机,本机也无法Ping他人,可能会带来一点麻烦。
(1)直接修改/proc/sys/net/ipv4/icmp_echo_ignore_all 文件(这个文件默认是只读的) 该文件只有一个数值: 将该值改“1”后为开启(运行)禁止PING 将该值改“0”后为关闭(停止)禁止PING
(2)直接输入命令行设置(这个方法需要ROOT权限) 直接在命令行输入以下指令 运行:禁止Ping echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all 停止:禁止Ping echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all 经测试以上方法在OpenVZ的VPS(CentOS 5.5、5.6)设置失败,其它承载方式的系统暂无条件测试(如图) 错误提示:不允许的操作(Operation not permitted) 附:设置开机自动禁止Ping方法 想开机后立即禁止ping响应,将运行语句添加到/etc/rc.d/rc.local即可。
2、使用iptables限制(推荐) 这个方法在OpenVZ下VPS、也在虚拟机中测试通过,禁止他人Ping本机的同时,本机也可以Ping他人。
(1)设置方法很简单,在SSH中输入以下命令,回车后直接生效无需重启iptables。
iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP
以上操作是利用iptables丢弃掉来自外网请求的ICMP包,达到禁Ping的效果。反之请看下面。
(2)解除设置方法(即删除本规则)
iptables -D INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP