我想在我的 Ubuntu 操作系统上始终禁用 ping 响应,以下命令有效,但仅在系统重新启动之前有效:
关闭:
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
平:
echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all
即使重新启动笔记本电脑后,如何才能关闭回声?
答案1
即使重新启动笔记本电脑,如何才能保持回声关闭?
您可以使用以下三种方式之一(以 root 身份):
编辑/etc/sysctl.conf
将以下行添加到您的/etc/sysctl.conf
:
net.ipv4.icmp_echo_ignore_all=1
然后:
sysctl -p
使用 iptables:
iptables -I INPUT -p icmp --icmp-type echo-request -j DROP
与计划任务
以 root身份运行crontab -e
,然后添加以下行:
@reboot echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
启动并启用服务:
systemctl start cron.service
systemctl enable cron.service
答案2
请注意,如果您正在使用 UFW 并尝试应用net.ipv4.icmp_echo_ignore_all
中的设置/etc/sysctl.conf
,您可能会发现这在重新启动后没有任何效果。在这种情况下,请查找相同的设置/etc/ufw/sysctl.conf
并在那里进行更改。
答案3
在附带 UFW 应用程序防火墙的基于 Debian 的 Linux 发行版中,您可以通过将以下规则添加到/etc/ufw/before.rules
文件来阻止 ICMP 消息:
-A ufw-before-input -p icmp --icmp-type echo-request -j DROP