You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何限制AWS应用负载均衡器仅接收浏览器流量,拦截非浏览器工具请求

限制AWS应用负载均衡器流量至常规浏览器的方法

1. 用AWS WAF和ALB集成(最核心的实现方式)

AWS WAF可直接与应用负载均衡器绑定,通过规则过滤不符合要求的请求:

  • 拦截特定User-Agent:
    常规浏览器的User-Agent会带有Chrome、Firefox、Safari、Edge这类标识,而Postman、curl、wget、无头浏览器的UA有明显特征(比如PostmanRuntime、curl、wget、HeadlessChrome、Selenium)。在WAF中创建字符串匹配规则,只要请求头的User-Agent包含这些工具类关键词,直接阻止请求。同时可设置允许规则,仅放行带主流浏览器标识的请求,注意覆盖不同浏览器的UA格式,避免误拦正常用户。
  • 检查请求头完整性:
    工具发起的请求常缺少数浏览器默认发送的头字段,比如Accept-Language、Sec-Fetch-Dest、Accept-Encoding等。在WAF中添加规则,当请求缺少这些关键头的2个及以上时,直接拦截。

2. 增加客户端JS验证(补防UA伪造)

不少工具可以伪造User-Agent,此时可通过前端JS做辅助验证:

  • 在页面加载时,用JS生成随机字符串并存为Cookie(比如browser-check=xxxx),后端需能验证该Cookie的有效性。
  • 在WAF中添加规则,检查请求是否携带有效的browser-checkCookie,未携带或无效的请求直接拦截。
  • 无头浏览器大多会暴露navigator.webdriver属性,JS里可判断该属性,若是无头模式则不生成验证Cookie,让请求被WAF拦截。

3. 基于请求行为拦截

工具类请求的行为与正常浏览器存在差异:

  • 速率限制:在WAF中配置速率规则,单一IP短时间内发送大量请求时直接拦截,工具的批量请求很容易触发该规则。
  • 检查请求路径组合:正常浏览器访问时会先加载页面,再请求CSS、JS、图片等静态资源;而工具可能直接请求API接口。在WAF中添加规则,若请求仅访问API路径,却无访问前端页面的记录,则拦截该请求。

注意事项

  • 避免误拦正常用户:部分隐私工具会修改UA或移除部分头字段,需测试主流浏览器的请求特征,调整规则的宽松度。
  • 定期更新规则:工具和无头浏览器会更新UA字符串,需定期查看WAF日志,补充新的拦截关键词。
  • 开启日志分析:启用ALB和WAF的日志功能,通过CloudWatch Logs分析拦截情况,持续优化规则。

内容的提问来源于stack exchange,提问作者user352290

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 18:32:48