阿里云再也不无需担心 CDN 被刷流量

2018-12-07 16:36:12 +08:00
 a523860

阿里云有个日志监控,利用它我们生成一个规则,当同一个 URL 访问的次数在 1 分钟超过 100 ? 时,则报警 报警规则选 短信+钉钉外,最关键是生成 post 报警

我们在主机上新建一个 Php 文件,接受此报警,php 提取出 访问频率最高 的 URL 和 访问该 url 的 IP 为防止误处理,我们设定只处理 .jpg.mp3 等这种大流量链接。 再利用 CDN API 接口中的封禁资源接口,把此 URL 设置为 block 状态,即该 URL 无法被访问状态

api 请求示例: https://cdn.aliyuncs.com?&Action=BlockObjectCaches&ObjectPath=example.com/test.jpg&Type=block&<公共请求参数>

同时利用 api 把该 IP 拉入 CDN 黑名单。

这样,example.com/test.jpg 就进入黑洞状态

如果别人改变规则 ,刷另外的图片,则依次会拉入黑洞。

然后我们根据手机提示信息,再看情况手工解除这些图片的黑洞。也可以用 api 自动解除

是不是很完美啊,当然总是避免不了小散户刷量,但总不会再出现一刷就几 T 的情况

别人付出的技术成本和难度也大大提高

5512 次点击
所在节点    CDN
4 条回复
hanguofu
2018-12-08 19:36:25 +08:00
写的很好,适合我这种小白,谢谢!
yuewolf
2019-01-21 16:59:40 +08:00
思路不错,先收藏一下
zhangyi886
2019-02-28 13:03:51 +08:00
请问你第一步说的日志监控和报警规则是在阿里云后台就可以找到并设置吗?还是需要通过 API 自己写?
SomeBottle
2020-02-19 01:17:24 +08:00
我之前采用了这种措施,非常好的方法,不过目前仍在测试。
话说监控后台总显示数据不足是什么情况

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

https://www.v2ex.com/t/515410

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

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

© 2021 V2EX