跳至内容

Linux 怎么禁止ping

发布日期:
作者:
评论数:暂无评论

对于较旧的系统

第一步:编辑sysctl.conf

sudo vi /etc/sysctl.conf

第二步:添加下面内容

net.ipv4.icmp_echo_ignore_all = 1
net.ipv6.icmp.echo_ignore_all = 1

第三步:重启生效

sudo sysctl -p

对于较新的系统,例如Debian 13,默认是没有 /etc/sysctl.conf 文件的

Debian 13 默认已经不再强制使用 /etc/sysctl.conf,而是改成了 /etc/sysctl.d/ 目录下的配置文件机制

第一步:创建一个自定义 sysctl 配置文件:

sudo vi /etc/sysctl.d/zz-disable-ping.conf

第二部:写入以下内容:

net.ipv4.icmp_echo_ignore_all = 1
net.ipv6.icmp.echo_ignore_all = 1

第三步:应用设置:

sudo sysctl --system

为什么没有 /etc/sysctl.conf

现在的加载顺序大概是:

  1. /usr/lib/sysctl.d/*.conf(系统默认)
  2. /run/sysctl.d/*.conf(运行时)
  3. /etc/sysctl.d/*.conf(你自定义)
  4. /etc/sysctl.conf(兼容用,可有可无)

也就是说:

官方更推荐用 /etc/sysctl.d/*.conf

/etc/sysctl.conf 已经变成“可选”文件

验证是否生效

执行:

cat /proc/sys/net/ipv4/icmp_echo_ignore_all

如果输出:

1

说明已经成功禁止 ping

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注