Actualizaciones
2025-06-25: Sumo referencia a un artículo de fabio.com.ar sobre bloquear por IPs, dado que muchas IAs no respetan los user-agent.En los últimos tiempos vengo encontrando muchos sitios web y servidores donde la transferencia mensual de datos o el consumo de CPU se disparaba mucho en algunos días. Al comienzo era poca diferencia, pero hace poco empezó a ocurrir de forma cada vez más frecuente y revisando logs detecté que los causantes eran bots de diferentes IAs “escaneando” dichos sitios. Por nombrar algunos ejemplos, los user-agent de ClaudeBot, GPTBot y Bytespider eran de los que siempre aparecían en los listados afectando al funcionamiento de esas webs. Encontré casos donde la transferencia pasaba de 3 gigas mensuales a 50 gigas en sólo dos semanas o, un CPU que nunca superaba un 10% de carga, de golpe, no bajaba del 90% afectando al funcionamiento. Y, siempre que eso ocurría, estaban estos user-agent presentes en los logs con miles apariciones.
Simultáneamente a esta situación, me encontré los artículos de Manuel Moreale y de Matthew Graybosch que dan cuenta de situaciones similares y mencionan como lo están trabajando ellos. Así que aproveché sus ideas para tomar una acción parecida. Compilé un robots.txt para disuadir esas búsquedas y una re-dirección para impedirles el acceso a los bots. Se que con la re-dirección, el otro archivo sería innecesario pero por las dudas preferí mantenerlo. Lo vengo implementando hace una semana en algunos sitios y noto la diferencia.
Aunque como todo en este ambiente de IA, la situación cambia de forma constante. Varios bots no respetan el robots.txt ni usan un user-agent claro, así que toca filtrar por IPs y rangos. Para detalles de eso, Fabio hace una buena explicación en su blog.
Así que les comparto lo que aprendí: “Si de golpe notan que su sitio consume más sin motivo aparente podría ser una IA”.
A quien le interese, la re-dirección para un .htaccess sería:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} (Amazonbot|anthropic-ai|Applebot|Applebot-Extended|AwarioRssBot|AwarioSmartBot|Bytespider|CCBot|ChatGPT|ChatGPT-User|Claude-Web|ClaudeBot|cohere-ai|DataForSeoBot|Diffbot|FacebookBot|Google-Extended|GPTBot|ImagesiftBot|magpie-crawler|omgili|Omgilibot|PerplexityBot|YouBot)
RewriteRule ^.* - [F,L]
Pueden agregar o quitar user-agents según su deseo. Está basada en la que publicó M. Graybosch, solo que le acomodé el RewriteRule porque su versión generaba un error 500 en mis servidores.
Sobre las IPs, uso un listado que fui recopilando desde los logs de mis apaches, así que puede ser diferente para ustedes. Igual Fabio en su artículo da varios rangos como base.
y el robots.txt cuya lista obtuve desde Dark Visitors:
User-agent: GPTBot
Disallow: /
User-agent: ChatGPT-User
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: PerplexityBot
Disallow: /
User-agent: Amazonbot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Omgilibot
Disallow: /
User-Agent: FacebookBot
Disallow: /
User-Agent: Applebot
Disallow: /
User-agent: anthropic-ai
Disallow: /
User-agent: Bytespider
Disallow: /
User-agent: Claude-Web
Disallow: /
User-agent: Diffbot
Disallow: /
User-agent: ImagesiftBot
Disallow: /
User-agent: Omgilibot
Disallow: /
User-agent: Omgili
Disallow: /
User-agent: YouBot
Disallow: /
User-agent: Applebot-Extended
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: ChatGPT-User
Disallow: /
User-agent: Claude-Web
Disallow: /
User-agent: cohere-ai
Disallow: /
User-agent: Diffbot
Disallow: /
User-agent: omgili
Disallow: /
User-agent: PerplexityBot
Disallow: /
Puedes escribirme en mastodon a @[email protected] o
mandarme un correo si deseas comentarme algo