1. 什么是高防CDN及为何必须启用
1)
高防CDN是结合流量清洗与边缘缓存的网络防护服务,能抵御海量DDoS攻击。
2) 适用于电商、游戏与API服务,能在边缘层拦截异常流量,减轻源站压力。
3) 常见指标:清洗容量(Gbps)、并发连接数(CPS)、响应速率(RPS)。例如:清洗能力100Gbps、并发10万CPS。
4) 启用后可将源站带宽利用率降至10%以下,常见压测结果显示边缘命中率可达90%以上。
5) 通过结合WAF、速率限制与ACL策略,可对复杂攻击行为做深度拦截而不是简单丢包。
2. 启用前的准备工作
1) 确认域名与DNS提供商账号,记录当前A/AAAA记录和TTL,建议初始TTL 300秒。
2) 准备源站信息:IP 203.0.113.10(主),203.0.113.11(备),端口80/443,操作系统 Ubuntu 20.04。
3) 检查服务器规格:主站 4 vCPU / 8GB / 带宽 500Mbps;备站 8 vCPU / 16GB / 带宽 1Gbps。
4) 获取CDN厂商资质与高防包,建议初始抗D套餐至少 100Gbps 清洗能力。
5) 备份现有配置(nginx.conf、证书、防火墙规则),以便切换回滚。
3. 接入高防CDN的实操步骤(代理/回源配置示例)
1) 在CDN控制台创建站点,选择回源为IP,填写主/备回源 203.0.113.10 / 203.0.113.11。
2) 在源站配置真实IP回源头(X-Forwarded-For 或 CF-Connecting-IP)。nginx 示例:
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
3) 修改DNS,将域名A记录指向CDN分配的CNAME或边缘IP,原TTL 300,生效后保持300秒监测。
4) 打开HTTPS证书上传或使用CDN托管证书,确保TLS 1.2/1.3均开启。
5) 在CDN开启缓存规则、压缩与大文件分片加速,提高静态资源命中率。
4. 健康检查与流量切换策略(含数据示例)
1) 启用主动健康检查:HTTP /healthz 请求,间隔10s,失败阈值3次。
2) 配置权重式流量分配:主站权重100,备站权重0。切换时按步减权(100→70→30→0),每步间隔30s。
3) 使用DNS低TTL或CDN实时转发实现秒级切换;TTL 300可在5分钟内完成全网刷新。
4) 示意流量切换表(示例数据):
| 阶段 | 主站权重 | 备站权重 | 预估切换时长 |
| 正常 | 100 | 0 | 实时 |
| 降流 | 70 | 30 | 30秒 |
| 回退 | 100 | 0 | 30秒 |
| 切换完成 | 0 | 100 | 90秒 |
5) 验证切换:使用curl -I 或者监控面板查看源站响应头 X-Cache 或回源IP。
5. 防护规则配置与性能阈值建议
1) WAF策略:默认拦截常见SQLi/XSS规则,开放白名单IP如 203.0.113.5。
2) 速率限制:对登录/接口设置 10 RPS/IP,短时突增触发临时封禁 5 分钟。
3) 并发连接保护:限制单IP并发连接 200,整体连接超过 50万 时自动进入清洗。
4) 黑名单自动学习:对超过 1000 次异常请求的IP自动加入黑名单。
5) 日志与告警:开启边缘日志并接入ELK/Prometheus,异动时CPU或丢包率超过10%触发告警。
6. 真实案例:某游戏服遭受50Gbps攻击的处置过程
1) 背景:某中型游戏公司,主站 4 vCPU/8GB/500Mbps,遭遇峰值50Gbps攻击,源站CPU接近90%。
2) 处置:立即在CDN控制台启用高防包(200Gbps),并将域名切换为CDN CNAME,启动WAF与速率限制。
3) 结果数据:攻击开始10秒内,边缘清洗后回源带宽降至原来的5%,源站CPU从90%降至12%。
4) 配置示例:源站 nginx worker_processes 4; keepalive_timeout 65; ssl_protocols TLSv1.2 TLSv1.3。
5) 总结:通过提前准备回源策略与权重切换流程,0分钟服务中断,业务平稳度过攻击窗口。