这个是防 CC 攻击分享的最后一章了。很感谢在上次被攻击中帮助我的 80host 的老板和 kvmla 的 k 总,他们积极分享这些防御经验,受益匪浅。也很感谢所有在被攻击过程一直支持我的朋友门,在攻击停止后又快速回来继续支持我。也希望这些经验能帮助到更多的人。
我战战兢兢的做站,也尽量不说任何人坏话,如果有什么伤害到你利益的事情也可以直接沟通,感谢。
CDN 并防不了 cc 攻击
首先澄清一个误区。其实 CDN 对防御 CC 基本没有任何作用,而且还会有很大的副作用。因为 CDN 一般只对静态文件进行缓存, PHP 等动态文件还是回源请求的,所以首先这个原因就基本对 CC 没有任何帮助作用。而且由于你用了 CDN ,如果你没有对 webserver 做特殊的设置,就会导致你的 web 日志收集到的都是 CDN 服务器的 IP ,而不是真实的攻击来源 IP ,导致你收集不到真实的 IP 。
Cloudflare 的 Security Level
Cloudflare 放 CC 也主要靠一个功能,就是 Firewall 里面, Security Level 的“ i am under attacks ! ”
我并不确定其他 CDN 是否提供了这个功能。如果其他 CDN 没有提供这个功能,那就是基本对 cc 防御没有任何帮助。
这个功能的主要作用是访问任何页面的时候强制在 CF 的认证页面停留 5 秒, 5 秒后才正式转入目标网页。因为 cc 攻击一般都是用程序直接瞬时发起一个请求,并不会等 5 秒,并且用的还不是正常的浏览器 , 所以能帮助过滤掉大量非正常访问的请求,达到防止 cc 攻击的作用。
但这个功能有一个非常大的问题,就是他强制了所有请求,包括 API 的请求!所以那几天我开启了 CF 后,大家安装我的锐速安装包就出问题了,因为本来要下载一个匹配文件,结果下下来的都是 CF 的这个强制认证页面。
而且要使用 CF 的这个功能,还需要:
- 把域名的 DNS 解析转入 CF
- 开启这个域名的 CDN 功能
即使有这么多不方便的地方,但 CF 的这个防御无疑是成本最低的防御方法。
被攻击的时候再开启也可以
有个错别字
https://github.com/jgmdev/ddos-deflate
cf可以利用闲置域名增加个二级域名给需要的域名cname就不用ns了
好像是个不错的方法?
可以的我一直这样毕竟主域名太多二级域名如果换ns等解析严重影响
这样过段时间就会被封