linux修改内核实现禁止被ping

时间:2024-07-08 12:44:25

概述

Linux默认允许被ping。其主要决定因素为:

  1. 内核参数
  2. 防火墙(iptables/firewall)

以上的决定因素是的关系,即需要均满足。

因此,修改linux禁被ping有以上两种方法可以实现。

修改内核文件使禁ping

1. 临时生效禁止被ping

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

/proc/sys/net/ipv4/icmp_echo_ignore_all 是一个内核参数文件,它的值决定了系统是否响应ICMP echo请求:

当这个文件的值为0时(这是默认设置),系统会响应所有的ICMP echo请求。
当这个文件的值设置为1时,系统会忽略所有的ICMP echo请求,即对所有ping命令不做出响应。

2. 永久生效禁止被ping

# 修改
cat /etc/sysctl.conf
# /proc/sys/net/ipv4/icmp_echo_ignore_all
# net网络 ipv4协议 icmp协议 忽略全部
net.ipv4.icmp_echo_ignore_all = 1 # 添加该行(0允许,1禁止)

# 生效
sysctl -p

修改iptables禁ping

iptables -A INPUT -p icmp -j DROP

具体iptables内容,可以查看我往期笔记Linux防火墙(以iptables为例)