全站加速 Bot 防护功能,通过特征识别算法,能够识别并管理常见的 Bot 工具,如搜索引擎、测速工具、内容聚合工具、扫描工具等。全站加速提供托管 Bot 分类规则和自定义 Bot 分类规则两种管理方式,配置灵活。
开启Bot防护
前提条件
您已开通 DCDN 安全防护服务,并已开通 Bot 防护功能。开通过程详见功能概述。
操作步骤
- 登录火山引擎全站加速控制台后,在控制台页面左侧点击 安全防护 ,在下拉菜单中点击 防护配置 。
- 在 防护配置 页面,点击 添加域名 ,在 域名防护接入 标签页左侧 全部域名 下,选择待配置的加速域名。
- 选择待配置的加速域名后,在 已选域名 下确认信息无误后,点击 确定 。
- 点击刚刚开启防护的域名,在 Bot防护 标签页,开启托管 Bot 分类规则或自定义 Bot 分类规则。
托管Bot分类规则
对常见Bot进行分类并管理,如搜索引擎、测速工具、内容聚合、扫描工具等。
- 在 Bot防护 > 托管Bot分类规则 标签页,开启 托管Bot分类规则 。
- 在 执行动作 栏,对具体类别的 Bot 行为设置处理动作,当前支持 观察、拦截。
- 观察:仅上报请求信息,可在攻击日志中查看已上报记录。
- 拦截:拦截对应请求,可在攻击日志中查看已拦截记录。
- 在 规则开关 栏,对具体类别的 Bot防护设置 开启 或 关闭 。
- 开启:该类型 Bot 流量将被执行对应动作。
- 关闭:该类型 Bot 流量将被放行。
自定义Bot分类规则
结合具体业务,按照请求中的协议特征对Bot进行管理。
在 Bot防护 > 自定义Bot分类规则 标签页,开启 自定义Bot分类规则 。
点击 添加规则 ,结合具体业务,针对协议特征设置具体 Bot识别规则,并执行 观察 或 拦截 动作。更多规则信息请参考下表。
参数 | 说明 |
---|
Bot名称 | 请设置具体 Bot名称。具体规则如下: - 名称支持中文、英文、数字,不支持特殊字符。
- 名称长度不超过20个字符。
|
描述 | 请添加规则描述,例如该 Bot 用于实现什么功能。 |
执行动作 | 对本条规则采取 观察 或 拦截 动作。 - 观察:仅上报请求信息,可在攻击日志中查看已上报记录。
- 拦截:拦截对应请求,可在攻击日志中查看已拦截记录。
|
规则开关 | 对本条规则设置 启用 和 关闭 状态。 - 开启:该类型 Bot 流量将被执行对应动作。
- 关闭:该类型 Bot 流量将被放行。
|
自定义bot特征 | - 条件关系:本条规则下,不同匹配字段之间的高级条件关系,当前支持 AND 和 OR 。
- AND:Bot行为同时满足所有匹配字段的条件,本条 Bot规则生效。
- OR:Bot行为满足所有匹配字段中任意一条的条件,本条 Bot规则生效。
- 匹配字段:下拉列表框中选择匹配字段,目前支持请求协议、请求uri、请求方法、请求路径、请求参数、请求头、请求ua、请求refer、请求cookie、请求体长度、请求体格式、x-forwarded-for、客户端ip、自定义args、自定义header、自定义cookie。
- 逻辑符:下拉列表框中选择逻辑符,目前支持大于、大于等于、等于、小于、小于等于、不等于、包含子串、不包含子串、包含前缀、不包含前缀、包含后缀、不包含后缀、包含关系、非包含关系、属于关系、非属于关系、正则。逻辑符号具体解释参见逻辑符号解释。
- 匹配内容:请填写该条规则需要匹配的内容。
- 操作:点击 删除 ,可以删除单条匹配条件。
|
打开 规则开关 ,开启本条Bot防护规则。
逻辑符号解释
逻辑符号 | 解释说明 | 示例 |
---|
等于 | 匹配字段和匹配内容相等 | - 当前配置下,请求ua 的值为
abc ,表示命中第一行匹配条件。 - 当前配置下,请求ua 的值不是
bcd ,表示命中第二行匹配条件。
|
不等于 | 匹配字段和匹配内容不相等 |
包含子串 | 匹配内容为匹配字段的子串 | - 当前配置下,如请求ua 的值为
deabcd ,字段包含 abc ,表示命中第一行匹配条件。 - 当前配置下,如请求ua 的值为
deabcd ,字段包含 bcd ,表示未命中第二行匹配条件。
|
不包含子串 | 匹配内容不是匹配字段的子串 |
包含前缀 | 匹配内容为匹配字段的前缀 | - 当前配置下,如请求ua 的值为
abcde ,字段包含 abc ,表示命中第一行匹配条件。 - 当前配置下,如请求ua 的值为
abcde ,字段包含 bcd ,表示命中第二行匹配条件。
|
不包含前缀 | 匹配内容不为匹配字段的前缀 |
包含后缀 | 匹配内容为匹配字段的后缀 | - 当前配置下,如请求ua 的值为
deabc ,字段包含 abc ,表示命中第一行匹配条件。 - 当前配置下,如请求ua 的值为
deabc ,字段不包含 bcd ,表示命中第二行匹配条件。
|
不包含后缀 | 匹配内容不为匹配字段的后缀 |
包含关系(包含所有匹配集合) | 匹配内容集合内所有子串都是匹配字段的子串 | - 当前配置下,如请求ua 的值为
xxabcxxdef ,字段包含了设置的全部匹配内容 abc 、def ,表示命中第一行匹配条件。 - 当前配置下,如请求ua 的值为
xxabcxxdef ,字段完全不包含设置的全部匹配内容xyz 、lmn ,表示命中第二行匹配条件。
|
非包含关系(不包含所有匹配集合) | 匹配内容集合内所有子串都不是匹配字段的子串 |
属于关系(属于匹配集合) | 匹配字段和任意匹配内容集合中的元素相等 | - 当前配置下,如请求ua 的值为
xxabcxxx ,字段与设置的匹配内容中的 abc 相等,表示命中第一行匹配条件。 - 当前配置下,如请求ua 的值为
xxabcxzz ,字段与设置的匹配内容xyz 、lmn 都不相等,表示命中第二行匹配条件。
|
非属于关系(不属于匹配集合) | 匹配字段和任意匹配内容集合中的元素都不相等 |
正则 | 匹配字段能通过正则被匹配 |
当前配置下,请求ua 的值为一个或多个字母、数字、下划线都表示命中该匹配条件。
|