linux防ip欺骗关键在于激活内核rp_filter=1反向路径过滤、accept_source_route=0禁用源路由、accept_redirects/send_redirects=0禁用icmp重定向,并辅以iptables对外接口封禁私有及非法地址段。

Linux服务器防IP欺骗,关键不是靠iptables封几个地址,而是激活内核自带的路径校验和源地址过滤能力。这些机制在数据包进入协议栈早期就做判断,比防火墙规则更底层、更高效。
启用反向路径过滤(rp_filter)
这是防御IP欺骗最核心的内核参数。它检查收到的数据包:源IP是否能通过接收该包的同一接口“原路返回”。若不能,大概率是伪造源地址。
-
推荐设为1(宽松模式):执行
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter,再对每个对外接口单独设置,例如echo 1 > /proc/sys/net/ipv4/conf/eth0/rp_filter - 设为2(严格模式)安全性更高,但要求网络路由完全对称;若存在多出口或策略路由,可能误丢合法包
- 务必同时设置
all和具体接口,避免某接口未启用导致防护缺口
禁用IPv4源路由选项
源路由允许发送方指定报文路径,攻击者常借此绕过防火墙或伪装成内网地址。内核可直接丢弃含该选项的包,无需规则介入。
在无 root/sudo 权限的环境(云容器、VPS、隔离主机)中安装并配置 OpenClaw 浏览器工具的 headless Chrome。适用场景:...
- 执行
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route - 同样对关键接口补充设置,如
echo 0 > /proc/sys/net/ipv4/conf/eth0/accept_source_route - 该参数默认多数发行版已为0,但仍需确认,不可依赖默认
关闭ICMP重定向收发
非法ICMP重定向可被用于篡改主机路由表,辅助IP欺骗实现中间人或流量劫持。非路由器角色的服务器必须禁用。
- 在
/etc/sysctl.conf中添加四行: net.ipv4.conf.all.accept_redirects = 0net.ipv4.conf.default.accept_redirects = 0net.ipv4.conf.all.send_redirects = 0net.ipv4.conf.default.send_redirects = 0- 运行
sysctl -p生效,并用sysctl -a | grep redirect验证全部为0
配合iptables封禁明显非法源地址
内核参数解决通用路径欺骗,iptables则补上地址段层面的硬性过滤。只对外网入口链(如INPUT on eth0)应用,避免影响内网通信。
- 封禁私有地址段:
iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP - 封禁回环、链路本地、多播等不可路由地址:
-s 127.0.0.0/8、-s 169.254.0.0/16、-s 224.0.0.0/4、-s 0.0.0.0/8、-s 240.0.0.0/4 - 注意:这些规则仅适用于外部接口入向流量,切勿加在lo或内网接口上










