Cloudflare 防 CC 小技巧:在边缘缓存页面

25 天前
 user23125

先确保源站 IP 没有暴露,不然 CF 没有任何效果,在服务器防火墙仅允许 Cloudflare IP 段回源。并且配置 Authenticated Origin Pulls ,不要使用 CF 提供的默认证书。原因可参考这个文章:Relying solely on IP Allowlisting with Cloudflare is WRONG

然后在 Cloudflare 仪表盘设置速率限制规则,速率限制规则可以防小型 CC ,因为小型 CC 可能不会触发 CF 的 http ddos 检测。

以上是众所周知的防 CC 方法。但是在大型 CC 攻击下,仍会有不少漏网之鱼打到源站。我们可以在 Cloudflare 边缘缓存页面,把 TTL 设置成 1 小时,检测 cookie 为登录用户绕过缓存,然后在源站添加代码在内容更新时调用 Cloudflare API 清除缓存。这样可以防止恶意流量打崩服务器,也可以加速正常用户的访问。

这种方法适合论坛、博客这类对实时性要求不高的网站。

1242 次点击
所在节点    Cloudflare
7 条回复
wogogoing
25 天前
看起来有意思,后面研究下。
ab
25 天前
Authenticated Origin Pulls 使用自定义证书,免费账户也是有权限的吗?
user23125
25 天前
julyclyde
24 天前
v2ex 的 recent 我看大概就是类似的,强制缓存
以至于翻几页就发现好像顺序不太对劲啊……
user23125
24 天前
@julyclyde V 站没有在边缘缓存页面,未登录用户看到的内容是在源站缓存的。在大规模 CC 攻击下源站还是会被打崩的。
julyclyde
24 天前
@user23125 我看到的现象是,recent 翻页,经常会在不同页码看到有同一篇帖子。据此推断应该是 recent 的不同页面被缓存的老化进度不一致
xzsljc
6 天前
差不多了。 还是隐藏源站,配合高性能的源服务器

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1140034

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX