全部文档
当前文档

共搜索到 0 条结果

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

通过UA黑白名单防止异常访问

最近更新时间:2026-06-26 18:19:22

通过UA黑白名单防止异常访问

场景说明

金山云 CDN UA 黑白名单是加速域名轻量化访问管控能力,基于 HTTP 请求头的 User-Agent(UA)识别客户端身份,通过黑名单拦截、白名单放行策略,抵御恶意爬虫、刷量脚本、非法工具及伪造客户端等异常访问。可减少无效流量、带宽损耗与内容爬取风险,低成本提升站点安全与业务稳定性。

UA含义

  • User-Agent(UA)是 HTTP/HTTPS 请求头核心字段,客户端发起请求时自动携带,用于标识客户端类型、设备、浏览器、操作系统及访问工具,是区分正常访问与异常请求的关键依据。

  • 通俗来讲,UA 相当于客户端的访问身份证:Chrome、Edge、iOS、Android 及官方 APP UA对应合法访问;空白 UA、伪造 UA、爬虫 / 刷量工具 UA 多为恶意访问。

如何识别攻击UA

异常UA特征

  • 格式畸形:包含 Python 等自动化工具标识、格式错乱字符、无效域名类异常 UA。

  • 场景不符:访问场景与客户端类型不匹配,例如微信 H5 页面出现桌面老旧浏览器 UA。

基于 CDN 离线日志分析识别

可参考文档日志管理。依托 CDN 离线日志,可快速筛查、统计异常 UA,以下为常用分析命令及说明:

  1. 统计 Top10 高频 UA

grep -o 'Mozilla[^"]*' test.txt | sort -n | uniq -c | sort -nr | head -n 10

作用:提取日志内主流浏览器 UA,按访问频次倒序,输出排名前十的 UA。

  1. 过滤常规浏览器,筛查小众 / 异常 UA

grep -o 'Mozilla[^"]*' test.txt|grep -v -E "Firefox|Chrome|Safari|Edge" 

作用:排除主流浏览器 UA,快速定位可疑访问客户端。

  1. 统计空 UA / 非标准 UA 访问次数

awk '!/Mozilla/' test.txt | wc -l

作用:统计无标准浏览器标识的请求总量,识别空白 UA 及非常规客户端访问。

命令参数释义

  • grep -o:仅输出匹配到的内容;

  • grep -v -E:批量排除指定匹配项;

  • wc -l:统计文本行数(请求次数)。

配置步骤

控制台支持精准UA和正则匹配两种录入形式

配置UA黑名单

配置场景

业务站点长期遭遇全网爬虫、采集工具、扫描脚本批量访问,导致CDN流量激增、带宽成本飙升、页面内容被非法爬取。通过配置爬虫专属UA黑名单,精准拦截各类爬虫工具,过滤无效流量,降低资源损耗与账单风险。

配置示例
  1. 进入CDN控制台【自助配置】页面,找到指定域名,点击【管理】进入域名配置页面。

  2. 点击【访问控制】模块,进入【UA黑白名单】配置界面,配置UA黑名单,输入完成后点击确认。

  • 以Apache-HttpClient为例,拒绝所有Apache-HttpClient的UA请求。

  • 由于Apache-HttpClient有不同的版本,可通过正则^Apache-HttpClient.*$来进行匹配。

配置UA白名单

配置场景

企业内部系统、专属APP资源、付费内容、私密静态资源等,仅允许指定客户端访问。配置可信UA白名单后,仅官方APP、指定浏览器、内部设备可访问资源,彻底隔绝外部非法访问,保障数据安全。

配置示例
  1. 进入CDN控制台【自助配置】页面,找到指定域名,点击【管理】进入域名配置页面。

  2. 点击【访问控制】模块,进入【UA黑白名单】配置界面,配置UA白名单,输入完成后点击确认。

注意:控制台最多支持录入100条UA,通过换行来区分不同的ua;若超过一百条,可通过正则匹配来封禁相似UA或者通过调用API接口实现,参考设置UA黑白名单

常见问题

  1. UA白名单和黑名单可以同时配置吗

    不可以同时配置,二者只能选其一。

  2. 怎么判断请求是被UA黑白名单拒绝

    请求响应403,且响应header中打印Ks-Deny-Reason: user-agent-no-match,代表本次请求被UA黑白名单拦截。

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈