前段时间小陶的博客被人连续攻击了将近一个月,被攻击其实我并不在乎,而是根据被攻击的契机反复进行研究知识,从这一点上我是感谢攻击个人博客的恶狗。本文就是我的一个新的成果。写的非常非常详细,相信看完对你也是有很大的启发。本文也是一步一截图,但还是需要有一定的技术基础。如果是个纯小白,不建议使用本文的方式。
宝塔定时执行Python脚本实现受到攻击时自动切换解析到CloudFalre(支持多个解析同时作)-陶小桃log
部署的环境
境内外分路线解析并且设置好防火墙国内小陶用的是国内可控制使用情况的CDN(注意设置好QPS以及流量封顶)国外路线是高防CDN(小陶用的是CloudFlare,配置见文章《境内cname接入CloudFlare的超级详细教程》,注意设置好一个抗得住攻击的防火墙规则)国内不建议使用七牛云、上海云盾等CDN,这里没有什么偏见,它们都是很好的产品,但是不适合咱们贫穷的个人站长。七牛云这种是没法设置防御以及流量封顶之类的,被刷了第二天直接就是<>巨额账单>;而上海云盾虽然有免费版是不要钱的,但是被攻击会直接回源(上海云盾CDN免费体验套餐回源后会直接暴露源站ip,注意及时切断或更换解析),暴露源站IP可能会直接下来IP的DDOS攻击。至于的CDN我就不再一一列举了,凡事不能控制成本以及回源暴露源站的,个人博客站长最好都慎用。
DNS使用的是云DNSPods。本文的脚本实现就是针对DNSPods的解析进行调控,的DNS平台暂时还没有用过。如果DNS在平台但是也想用本文提供的方法和脚本,可以考虑将域名转入到DNSPods下,这也是支持的。方然也可以参考本文的脚本对阿里云DNS等进行API的修改和适配。小陶安装的是宝塔,目前版本是宝塔9.3.0正式版,宝塔安装后是自带了Python环境,本脚本可以直接调用而不需要单安装Python解释器,如果你的没有Python,可能需要单安装一下Python解释器来驱动脚本的运行。你需要有一定的Python基础,至少看得懂注释,知道如何修改脚本里的关键参数
实现的思路
首先需要知道自己是处于攻击的状态。根据我被攻击丰富的经验,对于4核4G以下的水管,可以从负载量、CPU状况、内存使用状态来综合分析,如果处于较高的水平,基本就是被DDOS或者说cc攻击了。
完整代码请观看小陶自己的博客:
宝塔定时执行Python脚本实现受到攻击时自动切换解析到CloudFalre(支持多个解析同时作)-陶小桃log