分享一个 CloudFlare 免费版用“mTLS 进行身份验证”完美抵挡 CC 攻击的 WAF 规则。

文章目录[隐藏]

先决条件

  • 1、网站必须是已经 DNS 接入 CloudFlare 至少三天以上的。
  • 2、CNAME 和分线路接入 CloudFlare 的漏洞太多,没啥效果的!
  • 3、需要服务器端的 Nginx 配置配合,如果服务器能仅限 CloudFlare 节点 IP 回源了,效果最完美。
  • 4、网站必须已经完成全站 HTTPS 了。
  • 5、必须满足以上的站点才能防御效果最完美,免费无敌防御!

规则实现的效果

  • 1、百分百拦截各种 CC 攻击请求,服务器性能负载不受影响。
  • 2、备案、未备案域名均可使用,没有区别。
  • 3、精准针对攻击流量,正常真人访客不受影响(国内外访客均可灵活安排)
  • 4、不用开启 CloudFlare 五秒盾,把用户体验的影响降到最低。
  • 5、CC 攻击都击不穿自然就无视 DDoS 攻击了。
  • 6、无论是已经被攻击还是没有被攻击都可以使用这个 WAF 规则。
  • 7、配合定制优化过的缓存规则可以精准提升真人访客的浏览速度。绝对不受攻击影响!
  • 8、有网友实测高达 30PB 流量,持续 38 个小时的 CC 攻击,毫无压力!

这个 WAF 规则的原理其实也非常简单,就是让 Nginx 配合 CloudFlare 实现针对所有请求强制进行 mTLS 身份验证,而这个 mTLS 身份验证是需要支持 mTLS 的浏览器才能通过验证的,这样以来那些模拟出来的 CC 攻击就无所遁形了,那怕是盗用篡改 cookie 的模拟请求都没用了(这个可以绕过 CloudFlare 的速率限制)。可以理解为浏览器+CloudFlare+Nginx 三者之间的必须要验证 SSL 证书才能通过验证,缺一不可。CloudFlare 是少有的免费 CDN 就支持 mTLS 验证身份的,注意还免费哦!

所以,我们要先在 CloudFlare 里配置好 mTLS 验证的条件。首先要确保 CloudFlare 后台【SSL/TLS】——【概述】里您的 SSL/TLS 加密模式为 完全(严格),如下图:

另外还要在【SSL/TLS】——【源服务器】里创建给服务器用的 SSL 证书(注:创建的证书只会显示一次证书和密钥,建议大家分别保存为.pem 证书文件和.key 的密钥文件,记得用纯文本编辑器哦!),这可是 CloudFlare 给的有效期 15 年的 SSL 证书哦!然后还要勾选下面的【经过身份验证的源服务器拉取】用于对源服务器拉取进行身份验证。如下图:

这时候,我们就要转到服务器上给 Nginx 配置双 SSL 证书和开启客户端证书验证了,只需要在站点 Nginx 配置里增加上面创建的 CloudFlare 证书和密钥:

ssl_certificate /CloudFlare 证书绝对路径/cfcet.pem;
ssl_certificate_key /CloudFlare 证书密钥绝对路径/cfcert.key;

 

注:Nginx 站点配置文件之前的证书建议保留可以保证兼容性哦。

重点来了,继续在下面加上一个客户端证书和开启客户端证书验证:

ssl_client_certificate /CloudFlare 提供客户端验证证书绝对路径/authenticated_origin_pull_ca.pem;
ssl_verify_client on;

 

CloudFlare 客户端验证证书点此下载上传到服务器。

保存 Nginx 站点配置文件,重启一下 Nginx。

最后,回到 CloudFlare 在【安全性】——【WAF】里使用下面的“强制使用 mTLS 进行身份验证”规则模板,创建一个 mTLS 验证规则,具体如下图所示:

注意了,上图最下面的采取措施里建议选择“交互式质询”,实测防御效果最好,保证用户体验可以选择“托管质询”,两者的区别就是一个需要真人手动勾选来验证,另一个自动完成验证。

这个身份验证 WAF 对国内部分浏览器不友好,尤其是 QQ、微信等内置浏览器是无法通过验证的,估计跟浏览器内核不支持 mTLS 验证有关系,主流 Edge、Chrome、Firefox、Safari 无论 PC 还是手机端都是没有问题的。

最后就是保持这个 WAF 规则是开启状态即可,这时候在 CloudFlare 后台【安全性】——【事件】里可以看到所有的请求都被要求质询了,只要是 CC 攻击请求都会被触发这个质询的,因为都是机器模拟行为自然数是无法通过验证的,攻击流量也就无法到达服务器了,被 CloudFlare 完美的阻挡屏蔽掉了。CloudFlare 可是不计算攻击流量的哦,所以让对方随便打,大多久都可以,你的服务器稳如泰山。

文章版权归原作者所有或来自互联网,未经允许请勿转载。如有侵权请联系我删除,谢谢!
THE END
分享
二维码
打赏
< <上一篇
下一篇>>
文章目录
关闭
目 录