Cloudflare高级防御规则 看看我的网站如何用防御的

网站已趋于稳定,并且经过nginx调优。我想先分享一下Cloudflare的WAF规则,因为这是最有效的防御之一,可以抵御大量恶意攻击流量,我已经验证了数月。

对于海外独立站电商网站,Cloudflare的CDN服务是首选,它强大无比,毫无疑问。对于中小型需求,直接免费使用就可以了,接入后网站的加速和防护都交给CF处理,这是最稳妥的选择。

让我们开始吧!

进入WAF配置页

进入CF的后台,选择你要防御的站点域名。

记得在DNS选项,开启小云朵。这就开启CDN了,后续防御规则才会生效。

选择安全性–WAF

四个WAF规则

添加完规则后请使用鼠标拖拽方式把四个规则的排序按照下面顺序排列,最上面的优先执行:

选择正则表达式添加规则,复制规则保存即可。

防御规则配置

以下列出四个规则的正则表达式

放行原站IP

IPV4和IPV6地址改成自己

(ip.src eq 192.168.7.17) or (ip.src eq 2901:c080:1110:4c91:5400:4ff:feb8:130a)

没有ipv6

(ip.src eq 192.168.7.17)

选择操作: 跳过

要跳过的 WAF 组件: 所有其余自定义规则

阻止垃圾蜘蛛

(http.user_agent contains "YandexBot") or (http.user_agent contains "DotBot") or (http.user_agent contains "SemrushBot") or (http.user_agent contains "AhrefsBot") or (http.user_agent contains "BLEXBot") or (http.user_agent contains "YaK") or (http.user_agent contains "PetalBot") or (http.user_agent contains "MJ12bot") or (http.user_agent contains "MauiBot") or (http.user_agent contains "MegaIndex.ru")

选择操作: 阻止

放行SEO爬虫

无脑复制即可,无需修改,

(cf.client.bot) or (http.user_agent contains "duckduckgo") or (http.user_agent contains "facebookexternalhit") or (http.user_agent contains "Feedfetcher-Google") or (http.user_agent contains "LinkedInBot") or (http.user_agent contains "Mediapartners-Google") or (http.user_agent contains "msnbot") or (http.user_agent contains "Slackbot") or (http.user_agent contains "TwitterBot") or (http.user_agent contains "ia_archive") or (http.user_agent contains "yahoo")

选择操作: 跳过

阻止恶意流量

(cf.threat_score ge 5 and not cf.client.bot) or (not http.request.version in {"HTTP/2" "HTTP/3" "HTTP/1.1"}) or (not ip.geoip.country in {"AU" "CA" "FR" "DE" "HK" "IR" "JP" "KR" "MY" "SG" "TW" "GB" "US" "CN"})

选择操作: 托管质询

国家地区: 表示你允许哪些国家访问你的网站,或者说你业务的范围包含哪些国家,

这些大写字母是国家或地区的简称,在其中的都是放行的国家。如果你只在香港做业务可以只填写HK,其余的全部会进入质询拦截模式,俗称CF的5秒盾。

CloudFlare 默认威胁分数5, 实测基本给攻击全漏了进来,设置3同样有漏IP。所以根据2023年9月目前的网络来说这里建议设置为2!

速率限制

对了还有频率限制,也很关键。


注意事项

1: 如果你的某些docker项目或者探针出现问题,请在阻止恶意流量那里把Http/1.1添加到规则

2: 添加完规则后请使用鼠标拖拽方式把四个规则的排序按照下面顺序排列,最上面的优先执行:

后续观察

这一波设置基本就ok了。可以放几天试试,观察放行和拦截情况。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/5704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1. 深度学习笔记--神经网络中常见的激活函数

1. 介绍 每个激活函数的输入都是一个数字,然后对其进行某种固定的数学操作。激活函数给神经元引入了非线性因素,如果不用激活函数的话,无论神经网络有多少层,输出都是输入的线性组合。激活函数的意义在于它能够引入非线性特性&am…

【ZZULIOJ】1091: 童年生活二三事(多实例测试)(Java)

目录 题目描述 输入 输出 样例输入 Copy 样例输出 Copy code 题目描述 Redraiment小时候走路喜欢蹦蹦跳跳,他最喜欢在楼梯上跳来跳去。 但年幼的他一次只能走上一阶或者一下子蹦上两阶。 现在一共有N阶台阶,请你计算一下Redraiment从第0阶到第N阶…

代谢组数据分析七:从质谱样本制备到MaxQuant搜库

前言 LC-MS/MS Liquid Chromatography-Mass Spectrometry(LC-MS/MS ,液相色谱-质谱串联)可用于残留化合物检测、有机小分子检测、鉴定和定量污染物以及在医药和食品领域添加剂检测和生物小分子等检测。 LC-MS/MS一般包含五个步骤&#xff…

为什么叫“机器学习”Machine Learning 而不是叫“计算机学习”?

有一门学科“机器学习”火了起来,它是计算机科学与数学结合的产物,它的目的是使计算机“聪明”起来,实现人工智能。可是,令人困惑的是它明明就是计算机学习,为什么不叫“计算机学习”而叫“机器学习”呢?这…

PCB概念(进程控制块)—— 操作系统(形象解释版)

在操作系统里,PCB就像是每个进程的小秘密日记。它记录了进程的所有私事,比如身份信息、运行状态、内存地址啦,CPU信息等,还有进程优先级之类的东西。 简单来说,操作系统用它来把握和控制所有进程的行踪,确…

剧情游戏如何制作?

制作剧情游戏是一个令人兴奋且富有挑战性的过程!首先,你需要有一个扎实的故事框架,这个框架可以是一个详细的剧本或者是一个简要的大纲。在设计故事时,考虑到玩家的选择和互动是非常重要的,因为这些选择会影响到游戏的…

50. 【Android教程】xml 数据解析

xml 是一种标记扩展语言(Extension Mark-up Language),学到这里大家对 xml 语言一定不陌生,但是它在 Android 中的运用其实只是冰山一角。抛开 Android,XML 也被广泛运用于各种数据结构中。在运用 xml 编写 Android 布…

HashMap的底层存储介绍

HashMap底层实现采用了哈希表,这是一种非常重要的数据结构。对于我们一行理解很多技术都非常有帮助。 数据结构中由数组和链表来实现对数据的存储,他们各有特点。 (1)数组:占用空间连续。寻址容易,查询速…

openlayer 使用ol-ext插件实现凸显区域

使用ol-ext插件实现凸显多变形 效果如图 1、创建openlayer var map; var view; var tileLayer, source, vector;function init() {tileLayer new ol.layer.Tile({source: new ol.source.TileArcGISRest({url: "http://map.geoq.cn/arcgis/rest/services/ChinaOnlineStr…

Windows 10 使用 Vagrant 快速创建虚拟机

一、下载 VirtualBox 官网地址:Oracle VM VirtualBox 阿里云盘:阿里云盘分享 二、安装 VirtualBox 安装软件前请先确认 CPU 是否开启了虚拟化,要求开启 2.1、双击运行可执行文件后点击下一步 2.2、选择安装路径,为了避免中文乱码…

Rust Web开发实战:构建高效稳定的服务端应用

如果你厌倦了缓慢、占用大量资源且不稳定的模板化Web开发工具,Rust就是你的解决方案。Rust服务提供了稳定的安全保证、非凡的开发经验,以及能够自动防止常见错误的编译器。 《Rust Web开发》教你使用Rust以及重要的Rust库(如异步运行时的Tokio、用于Web…

OpenFeign修改HttpClient为Apache HttpClient 5

OpenFeign中http client 如果不做特殊配置,OpenFeign默认使用JDK自带的HttpURLConnection发送HTTP请求, 由于默认HttpURLConnection没有连接池、性能和效率比较低。所以修改为Apache HttpClient 5。 总结为两步: 加依赖改yml 具体操作请往…

GORM数据库连接池对接Prometheus

一、背景与介绍 Golang的database/sql包定了关于操作数据库的相关接口,但是没有去做对应数据库的实现。这些实现是预留给开发者或者对应厂商进行实现的。 其中让我比较关注的是Golang的sql包有没有实现连接池pool的机制呢? 毕竟Golang是静态语言,类似J…

P6242 【模板】线段树 3(区间最值操作、区间历史最值)

【模板】线段树 3&#xff08;区间最值操作、区间历史最值&#xff09; - 洛谷 #define _CRT_SECURE_NO_WARNINGS #include<bits/stdc.h> using namespace std; #define ll long long #define endl "\n" #define PII pair<int,int> #define int long lon…

platformd device、driver注册过程

本文以smsc911x驱动为例 platform_device注册过程 该设备被定义在dts里面了 参考文章设备树节点转换为设备节点device_node、和平台设备资源platform_device_设备树节点转换成平台设备-CSDN博客 dts里面的节点会被转换为device_node和platform_device(并不是所有节点都会被转…

vi编辑器使用

说明&#xff1a;本文介绍vi编辑器使用&#xff1b; 介绍&基础使用 vi编辑器是linux操作系统中最常用的编辑器&#xff0c;使用vi或vim命令启动。vim是vi编辑器的增强版&#xff0c;大多数情况使用vi命令也会打开vim编辑器&#xff0c;为了方便介绍&#xff0c;以下均称v…

【数组】Leetcode 80. 删除有序数组中的重复项 II【中等】

删除有序数组中的重复项 II 其他算法导航栏 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须在 原地 修改输入数组 并在…

C#实战:图像清晰度增强介绍和案例实践

目录 一、图像清晰度增强介绍 二、开发流程 三、请求参数说明 四、输出参数说明

【Web】2024XYCTF题解(全)

目录 ezhttp ezmd5 warm up ezMake ez?Make εZ?мKε? 我是一个复读机 牢牢记住&#xff0c;逝者为大 ezRCE ezPOP ezSerialize ezClass pharme 连连看到底是连连什么看 ezLFI login give me flag baby_unserialize ezhttp 访问./robots.txt 继…

从阿里云崩溃看IT系统非功能能力验证

昨天下午6点左右学员群里有人说阿里云又出问题了&#xff0c;并且还挺长时间没有恢复了。 我也登录了一下&#xff0c;结果登录直接不停地302。如下所示&#xff1a; 做为阿里云重要的基础设施&#xff0c;这一故障影响了。如官方通告的处理时间线&#xff1a; 17:44起&#…