iptables 防范伪造源 IP 地址攻击的技术实现

冰川箭仙

冰川箭仙

2026-07-31

157人浏览

原创

iptables本身不直接防范ip欺骗,需配合内核rp_filter(推荐设为1或2)实现反向路径检查,并辅以iptables规则封禁私有地址段(如10.0.0.0/8、172.16.0.0/12、192.168.0.0/16等)及连接限速,构成分层防御。

iptables 防范伪造源 ip 地址攻击的技术实现

iptables 本身不直接“防范”伪造源 IP 的攻击,而是通过规则配置配合内核机制,实现对可疑流量的识别与拦截。真正起作用的是反向路径过滤(rpfilter)显式匹配源地址合法性两类策略,而非单纯靠 NAT 或伪装功能。

启用反向路径过滤(推荐首选)

这是 Linux 内核原生支持的轻量级防护机制,能自动丢弃明显违背路由拓扑的入向包(即“非对称路径”包,常见于伪造源 IP 的扫描或反射攻击)。

  • 临时启用:运行 echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
  • 永久生效:在 /etc/sysctl.conf 中添加 net.ipv4.conf.all.rp_filter = 1,再执行 sysctl -p
  • 注意:若服务器有多网卡且路由不对称(如多出口、策略路由),建议设为 2(松散模式),即 net.ipv4.conf.all.rp_filter = 2

用 iptables 显式拒绝私有地址/保留地址作为源

攻击者常伪造 RFC1918 私有网段(如 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)或特殊地址(如 0.0.0.0、127.0.0.0/8、224.0.0.0/4)发起攻击。可在 INPUT 和 FORWARD 链中提前拦截:

  • iptables -A INPUT -s 10.0.0.0/8 -j DROP
  • iptables -A INPUT -s 172.16.0.0/12 -j DROP
  • iptables -A INPUT -s 192.168.0.0/16 -j DROP
  • iptables -A INPUT -s 127.0.0.0/8 -j DROP
  • iptables -A INPUT -s 0.0.0.0/8 -j DROP
  • iptables -A INPUT -s 224.0.0.0/4 -j DROP

这些规则应放在通用 ACCEPT 规则之前,否则会被跳过。

限制新连接的源地址范围(适用于明确业务网段)

如果服务只面向特定子网(如办公网 192.168.10.0/24),可直接放行该段,其余全部拒绝:

Clips AI
Clips AI

自动将长视频或音频内容转换为社交媒体短片

下载
  • iptables -A INPUT -p tcp --dport 22 -s 192.168.10.0/24 -j ACCEPT
  • iptables -A INPUT -p tcp --dport 22 -j DROP

这样即使攻击者伪造了合法公网 IP,只要不在白名单内,也无法建立新连接。

结合 conntrack 识别异常连接行为

伪造源 IP 的 SYN Flood 攻击常表现为大量无状态的新连接请求。可通过限制单 IP 新建连接速率来缓解:

  • iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 50 -j DROP
  • iptables -A INPUT -p tcp --syn -m limit --limit 20/sec --limit-burst 50 -j ACCEPT

注意:这类限速需配合 conntrack 模块,确保内核已加载(lsmod | grep nf_conntrack)。

实际部署时,rp_filter 是基础防线,辅以源地址黑名单和连接速率控制,才能形成有效分层防御。单纯依赖 iptables 匹配源 IP 并不可靠——因为三层伪造包在到达本机前无法被验证,关键在于早拦截、少响应、不回包。

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Java 网络安全
Java 网络安全

本专题聚焦 Java 在网络安全与加密通信中的应用,系统讲解常见加密算法(MD5、SHA、AES、RSA)、数字签名、HTTPS证书配置、令牌认证(JWT、OAuth2)及常见安全漏洞防护(XSS、SQL注入、CSRF)。通过实战项目(如安全登录系统、加密文件传输工具),帮助学习者掌握 Java 安全开发与加密技术的实战能力。

2025.10.13

1962

12

PHP 安全与防护
PHP 安全与防护

本专题聚焦于PHP开发中的安全问题与防御措施,详细讲解SQL注入、XSS攻击、CSRF攻击、文件包含漏洞等常见安全风险及其修复方法。通过结合实际案例,帮助开发者理解漏洞成因,掌握输入验证、会话安全、加密存储与安全编码规范,全面提升PHP网站的安全防护水平。

2025.11.04

268

21

墨刀AI提示词教学
墨刀AI提示词教学

本合集由PHP中文网精心整理,为您提供全面的墨刀AI提示词教学。内容涵盖高质量原型撰写公式与实操窍门,助您轻松掌握AI设计工具。无论是零基础入门还是进阶技巧,都能让您快速上手,大幅提升产品设计与协作效率。

2026.08.04

3

21

墨刀AI完整入门
墨刀AI完整入门

PHP中文网为您倾力打造墨刀AI保姆级入门指南完整版!本合集从零基础讲起,涵盖AI生成原型、提示词优化、图片转原型及多轮对话等核心功能。无论您是新手还是进阶用户,都能轻松掌握产品设计全流程。快来PHP中文网,一键解锁高效设计技巧,让想法即刻成型!

2026.08.04

1

20

墨刀AI进阶技巧
墨刀AI进阶技巧

本合集由PHP中文网精心整理,为您提供墨刀AI核心进阶策略指南。内容涵盖高效提示词写作、原型智能生成与微调、结构化导图制作及行业分析报告输出等实战技巧。助您轻松掌握AI设计工具,大幅提升产品设计与团队协作效率。

2026.08.04

4

14

火山引擎实名认证失败怎么办
火山引擎实名认证失败怎么办

火山引擎实名认证失败可能与证件信息填写错误、姓名或企业信息不一致、证件照片不清晰、营业执照状态异常、手机号验证失败或审核资料不完整有关。本专题整理个人认证、企业认证、资料上传、审核退回、重新提交和认证不通过的常见处理方法。

2026.08.04

3

10

火山引擎域名备案流程详解
火山引擎域名备案流程详解

火山引擎域名备案适合需要在火山引擎云服务器、对象存储、CDN或网站服务上绑定域名的用户参考。本专题整理备案入口、账号实名认证、备案类型选择、主体信息填写、网站信息提交、资料上传、初审核验、管局审核和备案失败排查,帮助用户完成网站上线前的备案流程。

2026.08.04

0

10

火山引擎DNS解析配置步骤
火山引擎DNS解析配置步骤

使用火山引擎DNS解析网站域名时,需要确认域名已完成管理接入,并正确配置服务器IP、CNAME地址或验证记录。本专题整理域名添加、记录类型选择、TTL设置、解析状态检查、备案和访问测试等流程,适合新手搭建网站时参考。

2026.08.04

0

10

火山引擎对象存储使用教程
火山引擎对象存储使用教程

火山引擎对象存储适合用于网站图片、视频文件、备份数据、静态资源和应用附件管理。本专题整理TOS控制台入口、存储桶创建、地域选择、权限设置、文件上传、访问链接生成、CDN加速、费用查看和常见上传或访问失败问题,帮助用户快速掌握对象存储基础操作。

2026.08.04

1

10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.4万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 131.8万人学习