Windows 和Linux 下 禁止ping的方法
目的:
禁止网络上的其他主机或服务器ping自己的服务器
运行环境:
Windows 03、08 linux
方法:
Windows 03下:
1.添加IP筛选器
第1步,依次单击“开始/管理工具/本地安全策略”,打开“本地安全设置”窗口。右键单击左窗格的“IP安全策略,在本地计算机”选项,执行“管理IP筛选器表和筛选器操作”快捷命令。在“管理IP筛选器列表”选项中单击“添加”按钮,命名这个筛选器名称为“禁止PING”,描述语言可以为“禁止任何其它计算机PING我的主机”,然后单击“添加”按钮,如图所示。
第2步,依次单击“下一步”→“下一步”按钮,选择“IP通信源地址”为“我的IP地址”,单击“下一步”按钮;选择“IP通信目标地址”为“任何IP地址”,单击“下一步”按钮;选择“IP协议类型”为ICMP,单击“下一步”按钮。依次单击“完成”→“确定”按钮结束添加,如图所示。
第3步, 切换到“管理筛选器操作”选项卡中,依次单击“添加”→“下一步”按钮,命名筛选器操作名称为“阻止所有连接”,描述语言可以为“阻止所有网络连接”,单
击“下一步”按钮;点选“阻止”选项作为此筛选器的操作行为,最后依次单击“下一步”→“完成”→“关闭”按钮完成所有添加操作,如图所示。
2.创建IP安全策略。
右键单击控制台树的“IP安全策略,在本地计算机”选项,执行“创建IP安全策略”快捷命令,然后单击“下一步”按钮。命名这个IP安全策略为“禁止PING主机”,描述语言为“拒绝任何其它计算机的PING要求”并单击“下一步”按钮。然后在勾选“激活默认响应规则”的前提下单击“下一步”按钮。在“默认响应规则身份验证方法”对话框中点选“使用此字符串保护密钥交换”选项,并在下面的文字框中键入一段字符串如“NO PING”,单击“下一步”按钮。最后在勾选“编辑属性”的前提下单击“完成”按钮结束创建,如图所示。
3.配置IP安全策略。
在打开的“禁止PING主机 属性”对话框中的“规则”选项卡中依次单击“添加/下一步”按钮,默认点选“此规则不指定隧道”并单击“下一步”按钮;点选“所有网络连接”以保证所有的计算机都PING不通该主机,单击“下一步”按钮。在“IP筛选器列表”框中点选“禁止PING”,单击“下一步”按钮;在“筛选器操作”列表框中点选“阻止所有连接”,依次单击“下一步”按钮;取消“编辑属性”选项并单击“完成”按钮结束配置,如图所示。
4.指派IP安全策略。
安全策略创建完毕后并不能马上生效,还需通过“指派”使其发挥作用。右键单击“本地安全设置”窗口右窗格的“禁止PING主机”策略,执行“指派”命令即可启用该策略,如图所示。
Windows 2008下:
在“管理工具”中打开“高级安全Windows防火墙”,点击“入站规则”,找到“文件和打印机共享(回显请求-ICMP v4-In)”(目前一般使用的IP V4网络,所以选择这个,下面还有一个是IP V6网络),在右边“操作”中使用“启用规则”
然后双击打开设置,点击“阻止连接”(如果是“允许连接”就是允许ping)
还需要在“高级”中勾选你当前网络的作用域,比如当前网络是“公用”就一定要把“公用”勾选上,不然无法作用于当前网络。
Linux下设置禁ping:
以root进入Linux系统,然后编辑文件icmp_echo_ignore_all
vi /proc/sys/net/ipv4/icmp_echo_ignore_all
将其值改为1后为禁止PING
将其值改为0后为解除禁止PING
直接修改会提示错误:
WARNING: The file has been changed sincereading it!!!
Do you really want to write to it (y/n)?y
"icmp_echo_ignore_all" E667:Fsync failed
Hit ENTER or type command to continue
这是因为proc/sys/net/ipv4/icmp_echo_ignore_all
这个不是真实的文件
如果想修改他的数值可以echo 0 或 1到这个文件
(即echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all )。
这个方法是暂时禁ping,重启后就失效了。
要是想永久更改可以加一行
net.ipv4.icmp_echo_ignore_all=1
到配置文件/etc/sysctl.conf里面