功能介绍
频率控制:通过配置IP,URL,ARGS,HEADER,COOKIE,UA,CI等粒度,进行访问次数限制,防止客户资源被过度消耗。
通过配置频率控制能够实现客户端IP访问域名首页次数限制。
前提条件
- 已经订购边缘安全加速平台-安全与加速服务,若未订购,请参见服务开通。
- 在控制台新增域名,请参见添加服务域名。
- 开通免费版及以上版本,支持使用频率控制功能,不同版本限制规则数不同,具体请见安全与加速服务版本差异对比。
操作步骤
- 登录边缘安全加速平台控制台。
- 在左侧导航栏中选择【安全能力】,进入【访问控制/限流】菜单,并在左侧域名列表选择您要防护的域名。
- 进入防护能力-高级安全防护-【频率限制】详细设置。
配置说明
配置项 | 说明 |
---|---|
开关 | 频率控制策略的开关,支持开启或关闭 |
处理动作 | 告警:达到阈值后只记录攻击日志。 跳转:达到阈值后,对请求进行Cookie挑战验证。GET请求响应302,POST请求响应307,其他METHOD请求不适用。 拦截:达到阈值后拦截请求,响应拦截页面。当防护粒度中包含响应头或状态码时,达到阈值后,会拦截匹配响应头、状态码之外其他字段的请求。 丢弃:达到阈值后拦截请求但不会响应页面,以减少带宽。当防护粒度选择响应头、状态码时,不适用于"丢弃"动作。 重定向:达到阈值后,将请求302重定向到指定页面。仅适用于静态类请求。当防护粒度选择响应头、状态码时,不适用于"重定向"动作。 JavaScript挑战:达到阈值后进行JavaScript挑战验证。仅适用于GET请求的HTML静态页面。当防护粒度选择响应头、状态码时,不适用于"JavaScript挑战"动作。 图片验证码:达到阈值后,响应图片验证码进行人机校验。仅适用于GET请求的HTML静态页面。当防护粒度选择响应头、状态码时,不适用于"图片验证码"动作。 源IP封禁:达到阈值后,将源IP封禁(封禁范围为针对该域名的请求,包括匹配静态文件过滤的请求)。仅适用于统计粒度为IP的场景。 |
规则名称 | 频率控制策略的规则名称 |
规则描述 | 策略的文字描述 |
统计粒度 | 支持选择URL、ARGS、HEADER、COOKIE、UA、IP。支持选择单粒度或两个粒度进行组合。 |
粒度缺失统计 | 当统计粒度选择两个粒度时,需要配置是否开启粒度缺失统计。选择是,粒度①且粒度②、粒度①、粒度②三种均可统计且均独立统计。选择否,则只支持粒度①且粒度②进行统计。 |
触发条件 | 配置一段时间周期,在这个周期内,统计粒度的请求达到N次时才执行处理动作 |
处理动作持续时间 | 处理动作的持续时长 |
防护范围 | 支持配置多个防护粒度,多个防护粒度为且关系,满足所有条件时,才触发处理动作 粒度选择:支持选择IP、IPS、地理位置、URI、PATH等十几种粒度 关系:包含/不包含 匹配内容:不同的粒度支持输入不同的匹配内容。一般支持输入多条,多条内容用英文符号;分隔 |
静态文件过滤 | 即无需检测的静态文件,需要填写文件后缀,配置后将不针对此类型的文件进行检测 |
防护粒度
粒度 | 解释 | 示例 | 备注 |
---|---|---|---|
PATH | 支持填写多个,多个PATH用;隔开。 | /qr/;/app/verifyCode/ | 目录路径 |
IP | 支持填写多个IP,多个IP间以;隔开。 | 192.168.1.1;192.168.1.2 | 客户端ip |
IPS | 支持填写多个IP段,多个IP段间以;隔开。 | 192.168.1.0/24;192.168.2.0/24 | 客户端ip段 |
IPR | 支持填写多个IP范围,多个IP范围间以;隔开。 | 192.168.1.1-192.168.1.10;192.168.1.12-192.168.1.20 | 客户端ip范围 |
IP文件 | 1.支持上传TXT格式的文件。 2.文件内容支持以下格式的IP地址:1.1.1.1、2.2.2.0/24、3.3.3.3-3.3.3.5。 3.多个IP地址以分号;或换行符进行分割。(因操作系统差异,如有报错请切换分割符。) 4.IP地址最多支持3000条。 5.添加IP文件匹配字段后,不支持添加其他匹配字段。 |
客户端IP | |
URI | 支持填写多个URI,多个URI间以;隔开。支持正则和字符串匹配。 当选择字符串时,支持下拉框选择对应域名的API资产。 |
/login.php | URI不包括问号后参数 |
REQUEST_URI | 支持填写多个REQUEST_URI。支持正则和字符串匹配。 | /login.php?id=1 | URI包括问号后参数 |
METHOD | 支持填写多个请求方法,多个请求方法间以;隔开。 | GET;POST | 请求方式 |
ARGS | 支持正则和字符串匹配。 | 问号后参数名 | |
GEO | 支持选择多个区域。 | 客户端ip区域 | |
HEADER | 支持正则和字符串匹配。 | 头部 | |
DEST_PORT | 请求的目的端口,支持填写多个端口,多个端口以;隔开。 | 54375;8080 | 目标服务器端口 |
响应头 | 响应头。支持正则和字符串匹配。支持”告警“、”跳转“、”拦截“、”源IP封禁“动作。当设置"拦截"动作,若防护范围内某个粒度的请求频率满足触发条件,在对防护范围内的请求执行动作时,会忽略请求中对于该字段的匹配 | 响应头 | |
状态码 | 状态码。支持选择2xx~5xx所有状态码,支持选择多个。支持”告警“、”跳转“、”拦截“、”源IP封禁“动作。当设置"拦截"动作,若防护范围内某个粒度的请求频率满足触发条件,在对防护范围内的请求执行动作时,会忽略请求中对于该字段的匹配 | 200;404;500 | 响应状态码 |
注意频率控制配置为单机配置,在单台机器上统计若达到触发条件,则在单机上执行处理动作。
支持复制操作
若您有批量复制当前域名的频率控制规则至其余域名的场景,可通过复制操作实现快速配置。
复制防护开关
使用场景:当您需要将一批域名的频率控制策略总开关都置为关闭时,可以通过规则复制-复制防护开关,将当前域名的频率控制防护开关复制到其他域名上。
操作步骤:
- 进入频率控制模块;
- 选择规则复制-复制防护开关;
- 选择您要调整的域名,并且仅支持选择【已启用】的域名。
配置页面:
复制防护规则
复制类型:新增
使用场景:当您需要将一条或多条访问控制规则都批量新增到其他域名上时,可以通过规则复制-复制规则来操作。
操作步骤:
- 进入【访问控制/限流】-【频率控制】模块;
- 选中一条或多条控制ID,选中规则复制-复制规则,复制类型选择【新增】;
- 选择您要复制规则的域名(支持复制上限域名为100个,只能选中已启用的域名);
- 点击复制,则完成规则批量新增的操作。
复制类型:覆盖
使用场景:当您需要将IP=1.2.3.4、处理动作=【拦截】的频率控制策略都修改统一为告警时,可以通过规则复制-复制规则来操作。
操作步骤:
- 进入【访问控制/限流】-【频率控制】模块;
- 选中一条控制ID,选中规则复制-复制规则,复制类型选择【覆盖】;
- 选择您要复制规则的域名(支持复制上限域名为100个,只能选中已启用、且包含相同防护范围策略的域名);
- 点击复制,则完成规则批量新增的操作。
注意复制类型为覆盖,域名列表只展示访问控制含相同防护范围,并且域名状态为【已启用】的域名;
复制类型为新增,域名列表展示域名状态为【已启用】的域名。
批量操作
支持用户对同一域名下的多项访问频率规则进行批量的启用、停用、删除及调整处理动作。
操作步骤:
- 进入频率控制模块;
- 勾选需要批量操作的规则;
- 下拉选择批量操作的动作。
配置场景
设置客户端IP访问域名首页次数限制
在【频率控制】新增规则:
- 规则名称:单IP访问首页次数限制
- 处理动作:拦截
- 统计粒度:IP
- 触发条件在59秒内,第5个请求开始执行处理动作
- 处理动作持续时间:10分
- 防护范围:URI包含字符串https://www.ctyun.cn/