概述
Linux默认允许
被ping。其主要决定因素为:
- 内核参数
- 防火墙(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为例)