如何阻止 AI 爬虫机器人?无论你是内容创建者还是博客作者,都是以生成独特、高质量的内容为生。您是否注意到 OpenAI 或 CCBot 等生成式 AI 平台会在未经您同意的情况下使用您的内容来训练其算法?不用担心!您可以使用 robots.txt 文件阻止这些 AI 爬虫访问您的网站或博客。
什么是 robots.txt 文件?
robots.txt只不过是一个文本文件,指导机器人(例如搜索引擎机器人)如何抓取其网站上的页面并为其建立索引。您可以阻止/允许跟踪您的 robots.txt 文件的好机器人或坏机器人。使用用户代理阻止单个机器人的语法如下:
user-agent: {BOT-NAME-HERE} disallow: /
以下是如何允许特定机器人使用用户代理抓取您的网站:
User-agent: {BOT-NAME-HERE} Allow: /
将 robots.txt 文件放置在哪里?
将文件上传到您网站的根文件夹。所以该 URL 将如下所示:
https://example.com/robots.txt https://blog.example.com/robots.txt
有关详细信息,请参阅以下有关 robots.txt 的资源:
- 来自 Google 的robots.txt 简介。
- 什么是 robots.txt?| robots.txt 文件如何在 Cloudflare 中工作。
如何使用 robots.txt 文件阻止 AI 爬虫机器人
语法相同:
user-agent: {AI-Ccrawlers-Bot-Name-Here} disallow: /
使用 robots.txt 文件阻止 OpenAI
将以下四行添加到 robots.txt 中:
User-agent: GPTBot Disallow: / User-agent: ChatGPT-User Disallow: /
请注意,OpenAI 有两个独立的用户代理用于网络爬行和浏览,每个代理都有自己的 CIDR 和 IP 范围。要配置下面列出的防火墙规则,您需要对网络概念和 Linux 根级访问有深入的了解。如果您缺乏这些技能,请考虑使用 Linux 系统管理员的服务来防止来自不断变化的 IP 地址范围的访问。这可能会变成一场猫捉老鼠的游戏。
1:ChatGPT-User由ChatGPT 中的插件使用
以下是 OpenAI 爬虫和获取器使用的用户代理列表,包括 CIDR 或 IP 地址范围,用于阻止您可以与 Web 服务器防火墙一起使用的插件 AI 机器人。您可以在 Web 服务器上使用ufw 命令或iptables 命令来阻止23.98.142.176/28 。例如,以下是使用 UFW 阻止 CIDR 或 IP 范围的防火墙规则:
sudo ufw deny proto tcp from 23.98.142.176/28 to any port 80 sudo ufw deny proto tcp from 23.98.142.176/28 to any port 443
2:GPTBot由 ChatGPT 使用
以下是OpenAI 爬虫和获取器使用的用户代理列表,包括CIDR或IP 地址范围,用于阻止您可以与 Web 服务器防火墙一起使用的 AI 机器人。同样,您可以使用ufw 命令或iptables 命令阻止这些范围。以下是阻止这些 CIDR 范围的 shell 脚本:
#!/bin/bash # Purpose: Block OpenAI ChatGPT bot CIDR # Tested on: Debian and Ubuntu Linux # Author: Vivek Gite {https://www.cyberciti.biz} under GPL v2.x+ # ------------------------------------------------------------------ file="/tmp/out.txt.$$" wget -q -O "$file" https://openai.com/gptbot-ranges.txt 2>/dev/null while IFS= read -r cidr do sudo ufw deny proto tcp from $cidr to any port 80 sudo ufw deny proto tcp from $cidr to any port 443 done < "$file" [ -f "$file" ] && rm -f "$file"
阻止 Google AI(Bard 和 Vertex AI 生成 API)
将以下两行添加到您的 robots.txt 中:
User-agent: Google-Extended Disallow: /
有关详细信息,请参阅以下Google 抓取工具和提取程序使用的用户代理的列表。但是,Google 不提供 CIDR、IP 地址范围或自治系统信息 (ASN) 来阻止您可以与 Web 服务器防火墙一起使用的 AI 机器人。
使用 robots.txt 文件阻止 commoncrawl (CCBot)
将以下两行添加到您的 robots.txt 中:
User-agent: CCBot Disallow: /
尽管 Common Crawl 是一个非营利基金会,但每个人都通过其名为 CCbot 的机器人使用数据来训练他们的人工智能。阻止它们也很重要。然而,就像 Google 一样,他们不提供 CIDR、IP 地址范围或自治系统信息 (ASN) 来阻止您可以与 Web 服务器防火墙一起使用的 AI 机器人。
使用 robots.txt 文件阻止 Perplexity AI
另一项服务可以获取您的所有内容并使用生成人工智能重写它。您可以按如下方式阻止它:
User-agent: PerplexityBot Disallow: /
他们还发布了IP 地址范围,您可以使用 WAF 或 Web 服务器防火墙进行阻止。
AI 机器人可以忽略我的 robots.txt 文件吗?
Google 和 OpenAI 等知名公司通常遵守 robots.txt 协议。但一些设计不佳的人工智能机器人会忽略你的robots.txt。
是否可以使用 AWS 或 Cloudflare WAF 技术来阻止 AI 机器人?
Cloudflare 最近宣布,他们推出了一项新的防火墙规则,可以阻止 AI 机器人。但是,搜索引擎和其他机器人仍然可以通过其 WAF 规则使用您的网站/博客。重要的是要记住,WAF 产品需要彻底了解机器人的运作方式,并且必须谨慎实施。否则,也可能导致其他用户被阻止。以下是使用 Cloudflare WAF 阻止 AI 机器人的方法:
请注意,我正在评估 Cloudflare 解决方案,但我的初步测试显示它阻止了至少 3.31% 的用户。3.31% 是 CSR(挑战解决率)率,即解决 Cloudflare 提供的验证码的人。这是很高的企业社会责任率。我需要做更多测试。当我开始使用 Cloudflare 时,我会更新这篇博文。
我可以阻止对 GitHub 和其他云托管网站上托管的代码和文档的访问吗?
不,我不知道这是否可能。
我对使用 GitHub 感到担忧,它是微软的产品,也是 OpenAI 的最大投资者。他们可能会使用您的数据通过服务条款更新和其他漏洞来训练人工智能。最好是您的公司或您独立托管 git 服务器,以防止您的数据和代码被用于培训。苹果等大公司禁止内部使用 ChatGPT 和类似产品,因为他们担心这可能会导致代码和敏感数据泄露。
当人工智能被用来造福人类时,阻止人工智能机器人获取训练数据是否道德?
我对使用 OpenAI、Google Bard、Microsoft Bing 或任何其他人工智能来造福人类持怀疑态度。这似乎只是一个赚钱的计划,而生成式人工智能却取代了白领工作。但是,如果您有任何关于如何利用我的数据来治愈癌症(或类似的东西)的信息,请随时在评论部分分享。
我个人的想法是,我现在没有从 OpenAI/Google/Bing AI 或任何人工智能中受益。我努力工作了 20 多年,我需要保护我的工作免受这些大型科技公司的直接获利。你不必同意我的观点。你可以把你的代码和其他东西交给人工智能。请记住,这是可选的。他们现在提供 robots.txt 控制的唯一原因是因为多个图书作者和公司正在法庭上起诉他们。除了这些问题之外,人工智能工具还被用来创建垃圾邮件网站和电子书。请参阅以下精选读物:
- Sarah Silverman 起诉 OpenAI 和 Meta
- AI图像创作者面临英国和美国的法律挑战
- Stack Overflow 是 ChatGPT 的伤亡:3 月份流量下降 14%
- 作者使用 ChatGPT 向 Kindle 图书发送垃圾邮件
- ChatGPT 因隐私问题在意大利被禁止
- AI 垃圾邮件已经在互联网上泛滥,并且有明显的迹象
- 专家警告人工智能可能导致灭绝
- 人工智能被用来生成整个垃圾邮件网站
- 公司计划抛弃人类员工,转而采用 ChatGPT 式人工智能
- 让 ChatGPT 等 AI 听起来很聪明的网站秘密列表
确实,人工智能已经使用了您的大部分数据,但您将来创建的任何内容都可以通过这些技术得到保护。
加起来
随着生成式人工智能变得越来越流行,内容创作者开始质疑人工智能公司未经许可使用数据来训练他们的模型。他们从数百万小型独立创作者创建的代码、文本、图像和视频中获利,同时剥夺了他们的收入来源。有些人可能不会反对,但我知道这样突然的举动会摧毁很多人。因此,网站运营商和内容创建者应该能够轻松阻止不需要的人工智能爬虫。这个过程应该很简单。
我将更新此页面,因为将可以通过 robots.txt 并使用 Cloudflare 等第三方提供的云解决方案来阻止更多机器人。
其他阻止机器人的开源项目
- Nginx Bad Bot 和用户代理拦截器
- Fail2Ban扫描 /var/log/auth.log 等日志文件,并禁止进行过多失败登录尝试的 IP 地址。