一、配置前环境检查清单

配置前必须确认运行环境已就绪,避免配置完成后因环境缺陷导致识别失效。逐项核对以下清单:

检查项 要求 验证命令
Nginx 版本 ≥ 1.18,含 Lua 模块 nginx -V 2>&1 | grep lua
规则库目录 可写,权限 755 ls -ld /etc/cloak/rules
SSL 证书 有效且未过期 openssl s_client -connect
IP 信誉库 已初始化,> 10 万条 wc -l ip_reputation.db
日志目录 可写,磁盘 > 5G df -h /var/log/cloak
配置前最常见的坑是 Lua 模块缺失。如果 nginx -V 输出中没有 lua 字样,所有识别脚本将无法执行,系统会默认放行全部流量——等同于斗篷失效。

二、识别引擎核心参数配置

识别引擎是斗篷系统的决策中枢,其核心参数直接决定识别准确率与响应延迟。以下参数需要在引擎配置文件中设置。

1. 识别延迟阈值

单次识别的耗时上限。超过此阈值则跳过剩余检测维度,直接输出当前结果,避免拖慢真实用户。

参数 默认值 推荐范围 说明
identify_timeout 20ms 15-30ms 超时后立即返回当前判定
identify_dimensions 5 3-7 IP/UA/Referer/指纹/行为
confidence_threshold 0.85 0.80-0.95 低于此值走兜底策略

2. 五维检测权重

每个检测维度对最终判定的贡献权重。权重之和应为 1.0,可根据实际投放平台调整:

# identify.conf 核心配置
[weights]
ip_reputation = 0.35      # IP信誉库权重最高
user_agent = 0.25          # UA特征匹配
referer_check = 0.15       # 来源Referer校验
fingerprint = 0.15         # 浏览器指纹
behavior = 0.10            # 行为特征(兜底维度)

[thresholds]
identify_timeout = 20      # 单次识别超时(ms)
confidence_min = 0.85      # 最低置信度
spider_score = 0.70        # 蜘蛛判定分数线

3. 置信度计算逻辑

各维度命中后累加权重得分,最终得分 ≥ spider_score 判定为蜘蛛,< confidence_min 走兜底。中间区间判定为真实用户。

三、规则库配置实战

规则库定义了"什么特征判为蜘蛛、什么判为真实用户"。规则库分白、黑、灰三层,配置顺序与优先级严格对应。

1. 白名单配置

白名单为可信流量,优先级最高,命中即放行。用于确保搜索引擎常规抓取不被误判。

{
  "whitelist_ua": [
    "Baiduspider+(+http://your-site.com/spider.htm)",
    "Googlebot/2.1 (+http://your-site.com/bot.html)",
    "bingbot/2.0 (+http://your-site.com/bingbot.htm)"
  ],
  "whitelist_ip_range": [
    "220.181.0.0/16",
    "66.249.64.0/19"
  ]
}

2. 黑名单配置

黑名单为审核蜘蛛,命中即导向 A 页。需按平台分别维护,不同广告平台的审核蜘蛛特征不同。

{
  "blacklist_ua": [
    "Googlebot-Image",
    "Baiduspider-render",
    "AdsBot-Google",
    "mediapartners-google",
    "facebookexternalhit",
    "Facebot"
  ],
  "blacklist_ip_range": [
    "66.249.64.0/19",
    "157.55.39.0/24",
    "31.13.24.0/21"
  ],
  "blacklist_fingerprint": [
    "headless_chrome",
    "phantomjs",
    "selenium_webdriver"
  ]
}

3. 灰名单与二次验证

灰名单是可疑流量,无法一次性判定。需配置二次验证机制:要求该类访客执行 JS 挑战或行为检测,通过则放行,失败则判蜘蛛。

{
  "graylist_rules": [
    {
      "condition": "datacenter_ip && unknown_ua",
      "action": "js_challenge",
      "timeout": 3000,
      "fail_action": "a_page"
    },
    {
      "condition": "no_referer && headless_suspect",
      "action": "behavior_check",
      "min_interactions": 2,
      "fail_action": "a_page"
    }
  ]
}
灰名单是降低误判率的关键。没有灰名单的系统只有"判蜘蛛"和"判真实"两档,边界流量只能二选一,误判率通常在 8%-15%。加入灰名单后误判率可降至 3% 以下。

四、跳转逻辑与兜底策略配置

跳转逻辑根据识别结果将流量导向 A 页或 B 页,兜底策略决定置信度不足时的默认行为。

1. 跳转配置

# redirect.conf
[routes]
spider_page = "/a-page.html"      # 审核蜘蛛看到的合规页
real_page = "/b-page.html"        # 真实用户看到的落地页
fallback_page = "/a-page.html"    # 兜底默认走 A 页

[redirect_type]
mode = "proxy"                    # 代理而非 302,避免跳转链被追踪
pass_headers = false              # 不传递内部标识头

2. 兜底策略三原则

3. 熔断配置

# circuit_breaker.conf
[fuse]
enabled = true
error_threshold = 100             # 10秒内错误超100次触发熔断
recovery_time = 60                # 60秒后尝试恢复
fallback_action = "all_a_page"    # 熔断期间全部走 A 页

五、SSL 与安全配置

SSL 是硬性要求——无 SSL 的页面会被浏览器标记"不安全",审核蜘蛛同样会降权。安全配置还包括防盗链、防探测。

1. SSL 配置要点

# nginx SSL 配置
ssl_certificate /etc/letsencrypt/live/omnimold.xin/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/omnimold.xin/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security "max-age=31536000" always;

2. 防探测配置

审核蜘蛛会尝试直接访问 B 页 URL 探测落地内容。必须配置 B 页的访问保护:仅允许通过识别引擎的请求到达,直接访问返回 A 页或 404。

# 防止直接访问 B 页
location /b-page.html {
    access_by_lua_block {
        local identify = require "cloak.identify"
        local result = identify.check(ngx.var.remote_addr,
                                      ngx.var.http_user_agent)
        if not result.is_real_user then
            ngx.redirect("/a-page.html")
        end
    }
    proxy_pass http://backend;
}

六、上线后调优配置

配置完成上线后,需要根据实际流量数据持续调优。调优的核心是复盘误判日志与漏判日志。

1. 监控指标配置

监控指标 告警阈值 说明
识别延迟 P99 > 50ms 真实用户感知卡顿
A 页流量占比 > 15% 审核蜘蛛密集来访信号
熔断次数 > 0 识别服务异常
误判率 > 5% 规则库需迭代

2. 规则库迭代节奏

按以上配置完成识别引擎、规则库、跳转逻辑、SSL安全与调优监控后,一套斗篷系统即可在 95% 以上识别准确率下稳定运行。配置过程中如遇规则库维护成本过高或团队缺乏持续运维能力,也可考虑成熟的商业化方案——ABcloakPro 斗篷系统已将上述全部配置封装为可视化后台,内置每日自动更新的 IP 信誉库与多平台审核蜘蛛特征,免去手动配置与持续调优的负担,适合快速验证投放策略。

配置参数需根据实际投放平台调优。搜索广告、信息流、联盟流量的审核机制各异,规则库权重与灰名单策略不可照搬,必须按平台单独配置后验证。

需要配置支持?

成熟的斗篷系统方案,开箱即用,省去配置与调优成本。

访问 ABcloakPro 官网 Telegram 咨询