跳转到内容
搜索文档

用户代理拦截

最后更新 查看 MarkdownAgent 设置

用户代理拦截允许您阻止特定的浏览器或 Web 应用 User-Agent 请求标头。用户代理规则适用于整个域名,而非单个子域名。

用户代理规则在 Zone 锁定规则 之后应用。若您通过 Zone 锁定允许了某个 IP 地址,该 IP 将跳过所有用户代理规则。

可用性

Cloudflare 用户代理拦截在所有套餐中均可用。但是,仅当您至少配置了一条用户代理规则时,此功能才在新安全仪表板中可用。

可用的用户代理规则数量取决于您的 Cloudflare 套餐。

FreeProBusinessEnterprise

Availability

Yes

Yes

Yes

Yes

Number of rules

10

50

250

1,000

创建用户代理拦截规则

  1. 在 Cloudflare 仪表板中,前往 Security rules(安全规则) 页面。

    Go to Security rules ↗
  2. 选择 Create rule(创建规则) > User agent rules(用户代理规则)

  3. Name/描述(名称/描述) 中输入规则的描述性名称。

  4. Action(操作) 中,选择要执行的操作:Block(阻止)Non-Interactive Challenge(非交互式质询)Managed Challenge(托管质询)Interactive Challenge(交互式质询)

  5. User Agent(用户代理) 中输入用户代理值(不支持 * 等通配符)。例如,要阻止 Bad Bot Web 爬虫,请输入 BadBot/1.0.2 (+http://bad.bot)

  6. 选择 Save and Deploy blocking rule(保存并部署拦截规则)

  1. 登录 Cloudflare 仪表板,并选择您的账户与域名。

  2. 前往 Security(安全性) > WAF,并选择 Tools(工具) 选项卡。

  3. User Agent Blocking(用户代理拦截) 下,选择 Create blocking rule(创建拦截规则)

  4. Name/描述(名称/描述) 中输入规则的描述性名称。

  5. Action(操作) 中,选择要执行的操作:Block(阻止)Non-Interactive Challenge(非交互式质询)Managed Challenge(托管质询)Interactive Challenge(交互式质询)

  6. User Agent(用户代理) 中输入用户代理值(不支持 * 等通配符)。例如,要阻止 Bad Bot Web 爬虫,请输入 BadBot/1.0.2 (+http://bad.bot)

  7. 选择 Save and Deploy blocking rule(保存并部署拦截规则)

Create a User Agent Blocking rule 操作发出类似如下的 POST 请求:

Required API token permissions

At least one of the following token permissions is required:
  • Firewall Services Write
Create a User Agent Blocking rulebash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/firewall/ua_rules" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"description": "Block Bad Bot web spider",
		"mode": "block",
		"configuration": {
				"target": "ua",
				"value": "BadBot/1.0.2 (+http://bad.bot)"
		}
	}'

质询操作

当用户代理拦截规则使用如 Managed Challenge(托管质询) 等质询操作时,访问者必须通过质询页面。通过质询后,将设置 cf_clearance cookie。该 cookie 的有效期由 Challenge Passage(质询通行) 设置控制。

相关资源

这篇文档对您有帮助吗?