DEV Community

LeoJulieta
LeoJulieta

Posted on

Como driblar o bloqueio da Cloudflare e preservar seu SEO

Cloudflare “Accountable Mixed‑Use” bloqueia crawlers de IA: como proteger seu site sem perder SEO

Introdução

A nova política da Cloudflare que bloqueia scrapers de IA está causando alvoroço entre editores, criadores de conteúdo e desenvolvedores. Se você já percebeu um aumento de tráfego suspeito ou recebeu demandas de remoção de material usado em treinamento de modelos, este guia mostra, passo a passo, como aplicar as regras da Cloudflare e manter seu site bem posicionado nos buscadores.

Por que isso importa agora

Motivo Impacto
Regulamentação em alta – GDPR, CCPA e o projeto American AI Act Multas de até 4 % do faturamento anual por uso indevido de dados.
Anúncio da Cloudflare (mar 2024) – “Accountable Mixed‑Use AI Crawlers” Crawlers que não declararem a finalidade nos cabeçalhos HTTP são bloqueados automaticamente.
Pressão dos criadores – Medium, Substack e YouTube registram +73 % de solicitações de remoção Risco de retirada de conteúdo e danos à reputação.
SEO em jogo – Bloquear todos os bots pode derrubar seu tráfego orgânico É preciso distinguir entre bots legítimos (Googlebot, Bingbot) e crawlers de IA.

Como funciona o scraping para IA

  1. Descoberta – O crawler varre sitemaps e resultados de busca para encontrar URLs.
  2. Coleta – Envia requisições automatizadas (geralmente com requests, Scrapy ou Puppeteer).
  3. Armazenamento – Salva HTML, imagens e metadados em buckets como S3 ou Azure Blob.
  4. Treinamento – Dados são tokenizados e alimentam LLMs ou modelos de visão (PyTorch, TensorFlow).

Exemplo de coleta simples com Python

import requests

headers = {
    "User-Agent": "MyScraper/1.0",
    # Falta o cabeçalho X-Intent → será bloqueado pela Cloudflare
}
url = "https://exemplo.com/artigo"

resp = requests.get(url, headers=headers)
print(resp.status_code)   # 403 se a política estiver ativa
Enter fullscreen mode Exit fullscreen mode

Defesas nativas da Cloudflare

Recurso O que faz Como habilitar
robots.txt avançado Permite regras por user‑agent com curingas.


txt\nUser-agent: *AI-Crawler*\nDisallow: /\n

|
| Headers personalizados | Exige X-Intent: research ou X-Intent: commercial. Crawlers que não enviam são bloqueados. | No painel → Firewall Rules → “Adicionar regra” → http.request.headers["X-Intent"] ne "research" → Bloquear. |
| JavaScript Challenge | Só navegadores reais conseguem executar o script, bots simples falham. | Security → Settings → Browser Integrity Check → Ativar “JS Challenge”. |
| Token de acesso por cookie | Gera um cookie de sessão após o desafio; bots que não armazenam cookies são rejeitados. | Rules → Transform Rules → Inserir “Set-Cookie: cf_access=…”. |

Exemplo de requisição correta (cabeçalho X‑Intent)

curl -H "User-Agent: MyResearchBot/2.0" \
     -H "X-Intent: research" \
     https://exemplo.com/api/dados
Enter fullscreen mode Exit fullscreen mode

Implementação prática: checklist para sites estáticos e dinâmicos

  1. Audite seu robots.txt

    • Garanta que somente bots de IA não autorizados estejam na lista Disallow.
    • Exemplo:
     User-agent: *
     Disallow: /admin/
    
     User-agent: *AI-Crawler*
     Disallow: /
    
  2. Crie regras de firewall na Cloudflare

    • Regra 1 – Bloquear requests sem X-Intent.
    • Regra 2 – Permitir Googlebot e Bingbot independentemente do cabeçalho.
   (http.request.headers["X-Intent"] ne "research" and
    http.request.headers["X-Intent"] ne "commercial") and
   not cf.client.bot in {"Googlebot","Bingbot"}
   → Block
Enter fullscreen mode Exit fullscreen mode
  1. Ative o JavaScript Challenge para caminhos críticos (/login, /checkout).
  2. Teste com ferramentas

    • curl (sem cabeçalho) → deve receber 403.
    • curl (com cabeçalho) → deve receber 200.
    • Ferramentas como web-sniffer ou Postman ajudam a validar.
  3. Monitore logs de firewall

    • No painel Cloudflare, habilite “Logpush” para enviar eventos a um bucket S3 ou a um SIEM.
    • Crie alertas quando o número de bloqueios de X-Intent ultrapassar um limiar (ex.: >100/dia).
  4. Avalie custos

    • Cloudflare Pro: US$20/mês, inclui 10 k regras de firewall.
    • Cloudflare Business: US$200/mês, regras ilimitadas e logs avançados.
    • Alternativas (Fastly, Akamai): custos similares, mas sem suporte nativo ao cabeçalho X-Intent.

Código pronto: regra de firewall em Terraform (opcional)

resource "cloudflare_firewall_rule" "block_ai_without_intent" {
  zone_id = var.cloudflare_zone_id
  description = "Bloqueia crawlers de IA que não enviam X-Intent"
  filter {
    expression = "(http.request.headers['X-Intent'] ne 'research' and http.request.headers['X-Intent'] ne 'commercial') and not cf.client.bot in {'Googlebot','Bingbot'}"
    paused = false
  }
  action = "block"
}
Enter fullscreen mode Exit fullscreen mode

Conclusão

A política “Accountable Mixed‑Use” da Cloudflare oferece um mecanismo eficaz para barrar crawlers de IA que não se identificam, mas sua aplicação exige cuidado para não sacrificar o tráfego orgânico. Seguindo o checklist acima, configurando cabeçalhos personalizados e testando rigorosamente, você protege seu conteúdo, cumpre a legislação e mantém a visibilidade nos motores de busca.

Próximos passos: implemente as regras, monitore os logs por uma semana e ajuste os limites conforme o volume de bloqueios. Assim, seu site fica seguro contra o scraping de IA sem perder posições no Google.


Herramienta mencionada: Groq Cloud

Top comments (0)