DDoS(分布式拒绝服务)本质是利用大量傀儡主机,耗尽目标带宽、CPU、内存、连接数,导致正常用户无法访问。防护分为事前预防、流量清洗、源端抑制、架构抗毁、应急处置五大类。
一、架构层:提升抗打击能力(治本)
多节点分布式架构、异地多活 避免单点,业务部署多机房 / 多可用区,单一节点被打不影响整体服务。
CDN + 高防 IP / 云 DDoS 防护 静态资源全部走 CDN,源站隐藏不直接暴露公网;业务入口使用云厂商高防 IP,把攻击流量引到清洗中心,干净流量回源。
关键点:不要把源站公网 IP 直接对外暴露。
带宽冗余扩容 足够的保底带宽,抵御大流量型 DDoS(UDP 洪水、ICMP 洪水),但单纯堆带宽无法对抗应用层 CC 攻击。
负载均衡、弹性伸缩 SLB / 网关承接外部流量,后端服务自动扩容,应对连接、请求耗尽类攻击。

二、流量清洗:对抗网络层 / 传输层 DDoS(L3/L4)
L3/L4 攻击:SYN 洪水、UDP 洪水、ICMP 洪水、碎片包、DNS 放大攻击。
边界网关流量清洗(云高防、本地抗 D 设备)
流量镜像 / 牵引至高防清洗设备,识别异常包直接丢弃,放行合法流量。
过滤畸形报文、超大碎片包、非法标志位 TCP 包。
SYN Cookie 抵御 SYN 洪水,服务器不保存半连接队列,通过 Cookie 校验完成三次握手,不被海量 SYN 包占满内存。
黑名单与 IP 信誉库 封禁恶意 IP、僵尸网络 IP 段;但 DDoS 源 IP 大量伪造,单纯黑名单只适合小规模攻击。
限制报文速率 网关侧配置:单 IP 最大并发连接、每秒报文数、带宽阈值,超过阈值限流。
抑制反射放大攻击 运营商 / 边界拒绝源 IP 伪造的出站报文(uRPF,单播反向路径转发),从源头阻止攻击者伪造源 IP 发起放大攻击。
三、应用层防护:对抗 CC 攻击(L7 层 DDoS)
CC 攻击:大量真实 IP 发起合法 HTTP 请求,把 CPU / 数据库打满,报文完全合规,L3‑4 设备很难识别。
验证码、人机验证(滑块、图片验证码) 高频访问触发验证,区分爬虫 / 傀儡机与真实用户;注意不要全量强制,影响正常用户。
访问频率控制 WAF 配置:单 IP / 代理 IP 的 QPS、URL 访问频次、会话数,超限做验证码、限流、封禁。
会话 Cookie 校验 要求客户端携带合法 Cookie,无 Cookie 直接拦截;傀儡机经常不带会话标识。
接口防护
慢请求防护:拦截慢速 HTTP 攻击(慢速连接、慢速 POST,耗尽服务端连接)。
对消耗资源重的接口(查询数据库、复杂计算)做 QPS 限制,禁止高频调用。
Bot 管理 识别代理、肉鸡、爬虫特征,对恶意 bot 降权拦截。
四、源端与运营商协同
运营商黑洞路由(Null Route) 遭受超大流量攻击,服务器带宽完全被打满时,运营商将被攻击 IP 黑洞,把攻击流量在骨干网丢弃,缺点服务直接断,属于应急手段。
uRPF 部署 上游运营商开启反向路由校验,阻断 IP 伪造,减少反射型 DDoS。
流量调度 攻击发生时,将业务流量调度到其他清洗中心、切换备用高防入口。
五、系统、内核层面调优(服务器本地)
只能作为辅助,不能对抗大流量 DDoS,大流量要靠上游清洗。
Linux 内核调优
调大 TCP 半连接队列、开启
tcp_syncookies关闭不必要协议,丢弃 ICMP、无用 UDP
限制单 IP 最大连接数
关闭不必要服务端口,减少被攻击面。
六、事前准备 & 应急策略
基线监控 监控带宽、连接数、CPU、数据库 QPS,建立正常基线,异常自动告警。
预案演练 DDoS 应急预案:切换高防、黑洞路由、降级开关、关闭非核心业务,保障核心功能可用。
业务降级 攻击发生时关闭非核心功能,优先保障核心接口可用;静态化页面减少数据库压力。
溯源取证 保存流量日志,攻击结束后溯源,上报运营商 / 网安。

七、各类攻击对应防护简表
重要误区
❌ 只靠服务器内核调优防御超大流量 DDoS:服务器本身扛不住百 G 级流量,必须上游清洗。
❌ 单纯 IP 黑名单:DDoS 源 IP 海量伪造,黑名单只能作为辅助。
❌ 带宽无限扩容:成本极高,无法对抗 CC 应用层攻击。
本文原创作者:易君召,详见:https://www.yijunzhao.cn/authors/yijunzhao,转载请注明出处。
原文链接
欢迎访问 小易撩挨踢