前言
一旦服务器接入互联网,便无时无刻不面临着黑客的扫描和潜在攻击。攻击者常常使用ping命令来探测服务器的在线状态,进而发动攻击。本文将介绍两种方法:修改内核参数和配置防火墙,以在Linux系统中实现禁止被ping。
教程
一、实验环境:操作系统:CentOS 7.8

二、内核参数修改:
1、配置前测试:在修改前,确保服务器可以响应客户端的ping命令。

2、参数配置:修改net.ipv4.icmp_echo_ignore_all参数,以忽略所有ping请求。默认值为0表示响应所有ping访问;将值设置为1则不响应ping。使用sysctl命令查看

3、临时配置:通过向/proc/sys/net/ipv4/icmp_echo_ignore_all写入1,实现临时禁止ping,重启后失效

4、永久配置:
在/etc/sysctl.conf添加相应参数,并通过sysctl -p命令应用更改。
vi /etc/sysctl.conf
##未行写入
net.ipv4.icmp_echo_ignore_all = 1
sysctl -p

三、防火墙配置:
1、前提:确保系统防火墙已开启。

2、禁止所有ping:
使用firewall-cmd添加规则,禁止所有ICMP协议的ping请求。
firewall-cmd –permanent –add-rich-rule=’rule protocol value=”icmp” drop’
firewall-cmd –reload

删除规则
firewall-cmd –permanent –remove-rich-rule=’rule family=”ipv4″ protocol value=”icmp” drop’
firewall-cmd –reload
3、允许特定IP ping:
配置规则,只允许特定IP地址(如192.168.226.1)ping服务器。
firewall-cmd –permanent –add-rich-rule=’rule family=”ipv4″ protocol value=”icmp” source NOT address=”192.168.226.1″ drop’
firewall-cmd –reload

删除规则
firewall-cmd –permanent –remove-rich-rule=’rule family=”ipv4″ protocol value=”icmp” source NOT address=”192.168.211.101″ drop’
firewall-cmd –reload
四、总结:
Ping命令是网络诊断的基本工具,通过ICMP协议检测主机间的连通性。但出于安全考虑,我们可能需要禁止未授权的ping操作。本文介绍的方法适用于希望隐藏服务器在线状态,减少被攻击风险的场景。对于面向公众的服务器,建议禁用ping功能;若需更精细的控制,可以通过配置防火墙实现。

暂无评论内容