打开Cloudflare找到要防御的站点
一、设置安全性
安全性 > 设置>安全级别设置为:高
咨询通过期设置为:15到30分钟 严重可以设置5分钟(这里慎重设置,不要太低,不要太高!)
浏览器完整性检查设置为:打开
二、安全性 > DDoS
1、点右边箭头中的 部署DDos
2、按照下面的图片配置
替代名称:DDos
规则集操作:阻止
规则敏感度:高
3、配置完记得点右下角的保存
三、安全性 > 自动程序
把自动程序攻击模式:开启
四、网络板块设置
网络>WebSocket>关闭
网络>Pseudo IPv4>覆盖表头
网络 > 洋葱路由 关掉
网络>网络 管理您网站的网络设置网络>gRPC>开启
五、安全性 > WAF > 速率限制规则
1、先创建规则
规则名称 (必需):速率限制规则
如果传入请求匹配…
字段 URL路径
运算符 选择“包含”
值 自己输入英文的:/
速率限制匹配运算符包含输入英文 / 是关键,也代表网站所有目录都匹配
具有相同特征… IP
当速率超过… 50 10秒钟
然后采取措施…:阻止
持续时间达...10秒钟
响应类型为 :默认 Cloudflare 速率限制响应(响应类型为 :默认 Cloudflare 速率限制响应,这会告诉访问被阻止,跳转到CF速度限制阻止页面。如果您想告诉您的网站访客发生了什么可以自定义HTML,利用UTF-8编码自己写个中文页面。)
表达式预览
(starts_with(http.request.uri.path, "/"))
六、缓存>Cache Rules>创建新缓存规则
当传入请求匹配时...
字段:URI 路径
运算符:不包含
值:.php
字段:URI 路径:
运算符:不包含
值:search
缓存资格(必填)>符合缓存条件
边缘 TTL(可选)>忽略缓存控制标头,使用此 TTL>输入生存时间 (TTL) (必需)>12小时
状态代码 TTL>添加状态码设置>
范围:大于或等于
状态代码:100
持续时间:12 小时
浏览器 TTL(可选)>替代源服务器,使用此 TTL>12 小时
七、自定义规则
WAF安全性>自定义规则
1、SEO规则(目的是放行搜索蜘蛛抓取页面)
表达式预览
(cf.client.bot) or (http.user_agent contains "Baiduspider") or (http.user_agent contains "bingbot") or (http.user_agent contains "Sogou") or (http.user_agent contains "YisouSpider") or (http.user_agent contains "360Spider") or (http.user_agent contains "YandexBot") or (http.user_agent contains "Quark")
然后采取措施…跳过
2、恶意流量
表达式预览
(cf.threat_score ge 5 and not cf.client.bot) or (not http.request.version in {"HTTP/2" "HTTP/3"}) or (ip.geoip.country ne "CN")
然后采取措施…托管质询
3、单独国家地区规则 当国家地区不等于中国时
表达式预览
(ip.geoip.country ne "CN")
八、重启服务器
配置完以大概30秒生效,一定要重启一下服务器,让服务器断开所有的程序连接
不要依赖在服务器上设置防火墙,因为流量已经到你服务器了,只要攻击够大,64/128核都可以干废。同样CF也会自动机器学习,哪怕设置好以后,服务器短暂满载,过一会,CF就会通过AI学习,不停的更新规则,这个规则更新不需要你人工干预。CF为什么免费?就是因为免费用户被攻击拿来做机器学习。别担心CF免费扛不住,或者被清退。理论上您被一次性攻击几十亿,CF还会拿你做文章。
标签: