CloudFlare自动开盾脚本
AutoAntiCC - Cloudflare WAF 自动防护脚本
1.介绍
通过计划任务检测服务器负载,在突然高负载疑似CC攻击时调用CloudFlareAPI启用防火墙策略的方式防御攻击,实现无攻击时完全不影响正常用户,有攻击时保证用户可以访问。
脚本每一分钟(可以自己设置)检测一次负载,当超过设定阈值时自动启用设置的CloudFlare策略,启用后不会重复请求API,在十五分钟后如果负载已经恢复,则会自动关盾。然后重复以上操作。
脚本开源在Github,欢迎各位修改再发布,Github开源仓库地址:https://github.com/LangfordKuo/AutoAntiCC
如果Github打不开,可以使用此链接直接下载:https://lyew.com/upload/autoanticc/cloudflare.py
2.CloudFlare配置
域名如何接入CloudFlare这里就不过多赘述了,网上有很多教程,我们这里首先需要创建一个WAF规则,脚本开盾并不是调用的“我正在被攻击模式”,而是自定义的规则,这样更加灵活。
首先打开左侧边栏展开安全性选项,在里面找到安全规则,新建一条自定义规则。







3.Python脚本配置
打开你下载好的Python脚本,根据下方图片的提示一步一步操作




4.服务器端配置
创建文件夹:
mkdir /root/anticc
创建好文件夹之后把cloudflare.py上传到/root/anticc中
上传好后,开始安装环境
如果你是CentOS系统,使用以下命令安装
yum install python3
yum install python3-pip
然后安装Python3的requests库
pip3 install requests
如果你是Ubuntu/Debian系统使用下面的命令安装
apt install python3
apt install python3-pip
然后安装Python3的requests库
pip3 install requests
如果pip3安装报错,可以这样安装
apt install python3-requests
环境安装好之后开始测试脚本
根据之前图片里的提示,把阈值设置到0.01,然后运行脚本,看看有没有开启WAF规则
cd /root/anticc
python3 cloudflare.py
执行之后去CloudFlare后台查看,如果正常开启防火墙,皆大欢喜你成功了。如果没有,检查一遍之前的配置和环境。
测试之后,记得手动在CloudFlare后台禁用防火墙规则,然后在/root/anticc目录中删除cloudflare.txt文件,最重要的把阈值从0.01改回去,推荐阈值设置50或者80
5. 宝塔面板配置计划任务
打开宝塔面板的计划任务页面,点击添加,任务类型选择Shell脚本,任务名称自己设置。
执行周期设置每一分钟,或者按秒运行,每30秒运行一次也可以。
脚本内容填写如下两种方法,任选一种就行,别两个都用
1.
cd /root/anticc
python3 cloudflare.py
2.
python3 /root/anticc/cloudflare.py
添加好之后手动点一下运行,然后查看日志,没有问题的话就完事了。
感谢各位看到这里,如果可以的话欢迎使用我们的服务器,不定期更新实用的脚本和教程。
后续还会写一键调用阿里云ESA开盾的脚本。