AI个人学习
和实操指南
讯飞绘镜

Anubis:通过工作量证明干扰AI爬虫抓取

综合介绍

Anubis 是一个由 TecharoHQ 团队开发的开源工具,主要用来保护网站免受 AI 爬虫的侵扰。它在 HTTP 请求中加入 SHA256 工作量证明(Proof-of-Work)挑战,要求访问者完成计算任务,以此挡住不遵守规则的自动化爬虫。这个工具由 Go 语言编写,开源在 GitHub 上,适合不想被搜索引擎收录或需要保护资源的网站使用。TecharoHQ 是一家加拿大公司,专注于反 AI 爬虫技术。Anubis 的设计灵感来自现代互联网中 AI 爬虫的滥用行为,这些爬虫无视 robots.txt 等标准,给服务器造成负担。官方明确表示,这是一个“核弹级”的解决方案,虽然极端,但能有效应对爬虫问题。

该方案更加高效,不需要依赖 Cloudflare 推出 AI 迷宫:利用生成式 AI 反制恶意爬虫 ,缺点也很明显,对于需要SEO的网站并不友好。

 

功能列表

  • 通过 SHA256 工作量证明验证 HTTP 请求,阻止 AI 爬虫访问。
  • 保护上游服务器资源,避免被自动化工具过度消耗。
  • 支持 Docker 部署,方便快速集成到现有系统。
  • 提供健康检查功能,确保服务稳定运行。
  • 开源代码,用户可以自由修改和定制。
  • 刻意阻止部分搜索引擎收录,适合不想公开的网站。

 

使用帮助

安装流程

Anubis 的安装简单,适合有技术基础的用户。以下是详细步骤:

1. 前置条件

  • 需要安装 Git 和 Docker:
    • Git 用于获取代码。
    • Docker 用于运行 Anubis。
  • 检查环境:
    git --version
    docker --version

确保命令有输出。

2. 获取代码

  • 在终端运行:
    git clone https://github.com/TecharoHQ/anubis.git
    cd anubis
    

3. 使用 Docker 构建和运行

  • 构建镜像:
    docker build -t anubis .
    
  • 运行容器:
    docker run -p 8080:8080 anubis
    
  • 默认监听 8080 端口,访问 http://localhost:8080 测试。

4. 配置(可选)

  • 自定义端口或地址:
    docker run -p 9000:8080 anubis --listen=http://0.0.0.0:9000
    
  • 替换 9000 为你想要的端口。

5. 检查运行状态

  • 查看健康状态:
    docker exec <容器ID> /app/bin/anubis --healthcheck
    
  • 返回正常则表示服务运行良好。

如何使用主要功能

Anubis 的核心是 SHA256 工作量证明防护。以下是操作说明:

工作量证明防护

  • 用户访问时,Anubis 要求客户端完成 SHA256 计算。
  • 普通浏览器能快速完成,AI 爬虫因计算成本高会被拦截。
  • 部署后无需手动操作,防护自动生效。

测试功能

  • 官方提供测试地址 anubis.techaro.lol
    • 浏览器访问 https://anubis.techaro.lol,会看到验证过程。
    • 用爬虫工具测试:
      curl https://anubis.techaro.lol
      

      会提示需要完成工作量证明。

查看日志

  • 检查运行日志:
    docker logs <容器ID>
    
  • 日志显示请求验证详情。

支持与问题反馈

  • 遇到问题可在 GitHub 提交 issue:
    • 地址:https://github.com/TecharoHQ/anubis/issues/new
    • 提交时需提供详细描述,包括环境和错误信息。
  • 想实时交流,可加入 Patreon 的 Discord:
    • 地址:https://patreon.com/cadey
    • 在 #anubis 频道提问。

注意事项

  • Anubis 会阻止部分搜索引擎(如 Google)收录网站。这是官方刻意设计的功能,不是缺陷。
  • 如果需要 SEO,官方建议用 Cloudflare 替代。
  • Anubis 适合无法使用 Cloudflare 或需要强力防护的场景。

 

应用场景

  1. 保护个人网站
    • 你有个博客,不想被 AI 爬虫抓取内容,Anubis 可以有效拦截。
  2. 托管私有资源
    • 分享文件给特定用户时,用 Anubis 确保只有验证通过的人能访问。
  3. 开发测试环境
    • 在开发阶段,防止爬虫干扰,用 Anubis 保护服务器资源。

 

QA

  1. Anubis 会影响正常用户吗?
    • 不会。对浏览器用户来说,计算任务很轻,几乎无感。
  2. 适合生产环境吗?
    • 适合。Docker 部署简单,经过测试能稳定运行。
  3. 为什么搜索引擎无法收录?
    • 工作量证明会挡住爬虫,包括搜索引擎。这是 Anubis 的设计目标。
  4. 不用 Anubis 怎么办?
    • 可以用 Cloudflare 保护网站,适合大多数情况。
未经允许不得转载:首席AI分享圈 » Anubis:通过工作量证明干扰AI爬虫抓取
zh_CN简体中文