本文共 1049 字,大约阅读时间需要 3 分钟。
在某些网络环境下,防止未经授权的ICMP包请求到服务器是非常重要的操作。以下是两条简单命令,用于实现这一目标。
运行以下命令,将ICMP包忽略所有请求的设置添加到sysctl配置文件中:
echo 'net.ipv4.icmp_echo_ignore_all = 1' > /etc/sysctl.conf
这一步是关键,因为它直接关联到我们想要实现的目标。net.ipv4.icmp_echo_ignore_all = 1 这个参数设置会让Linux服务器拒绝所有ICMP包的请求,从而防止未经授权的“ping”请求到达服务器。
为了让sysctl配置生效,需要重新加载配置文件:
sysctl -p
运行上述命令后,您应该会看到sysctl重新加载配置,并显示以下信息:
net.ipv6.conf.all.disable_ipv6 = 0net.ipv6.conf.default.disable_ipv6 = 0net.ipv6.conf.lo.disable_ipv6 = 0kernel.printk = 5net.ipv4.icmp_echo_ignore_all = 1
注意:net.ipv6.conf.*.disable_ipv6 = 0 这些参数保留了默认的IPv6设置,不会影响我们的主要目标。
为了确认配置是否生效,可以重新查看/etc/sysctl.conf文件:
cat /etc/sysctl.conf
输出结果应包含以下内容:
net.ipv6.conf.all.disable_ipv6=0net.ipv6.conf.default.disable_ipv6=0net.ipv6.conf.lo.disable_ipv6=0kernel.printk = 5net.ipv4.icmp_echo_ignore_all = 1
如果ICMP包仍然可以到达服务器,请确保sysctl服务正在运行:
systemctl status sysctl
如果sysctl服务未启用,可以启用并重启它:
systemctl enable sysctlsystemctl restart sysctl
通过以上步骤,您可以轻松实现禁止ping请求到服务器的目标。这一设置尤其适用于需要保护服务器免受未经授权访问或DDoS攻击的场景。
转载地址:http://qsry.baihongyu.com/