CloudFlare Web应用防火墙是一种智能、集成且可扩展的解决方案,可保护您的关键业务 Web 应用程序免受恶意攻击,并且无需更改现有基础架构。
创建
登陆 https://dash.cloudflare.com/ 后,选防火墙——防火墙规则——创建防火墙规则;如果你的域名还没接入CloudFlare Cdn,请按官方提示接入后再操作。
规则
我们可以使用编辑表达式的方式导入规则,也可以按图手动设置规则;
首先设置一条通过规则,让合法机器人爬虫通过(除非你不想搜索引擎收录你的网站,则可以不设);
通过规则表达式
(cf.client.bot)
设置为允许
然后设置人机验证规则,例如我们网站的用户是国内较多,那么可以设置:
国家/地区不是中国大陆、香港、台湾、澳门,且不是合法机器人爬虫,且威胁分数大于或等于5,且浏览器UA不含Mozilla/,且http版本较低的访问;进行人机质询,便可以阻挡大部分恶意爬虫。
人机验证规则表达式
(not ip.geoip.country in {"CN" "HK" "TW" "MO"} and not cf.client.bot) or (cf.threat_score ge 5) or (not http.user_agent contains "Mozilla/") or (not http.request.version in {"HTTP/2" "HTTP/3" "SPDY/3.1"})
设置为Js质询或者质询都可以;然后到 防火墙——自动程序——自动程序攻击模式——开 打开CloudFlare的自动阻止规则
如果还想进一步阻挡非浏览器的访问,可以在 SSl/TLS——边缘证书——最低 TLS 版本——TLS 1.3 提高TLS版本进行阻挡非浏览器以及低版本的浏览器的访问。
更多规则
手机QQ
(http.user_agent contains "QQBrowser" and http.user_agent contains "QQTheme")
微信
(http.user_agent contains "Wechat") or (http.user_agent contains "WeChat")
其它
可以给某个路径,例如:登陆路径Js质询、非大陆地区找回密码质询等等,按需求灵活配置。