Visitantes Sombrios

:information_source: Resumo Integra o serviço Dark Visitors com o Discourse para acompanhar rastreadores e scrapers indesejados que visitam seu fórum.
:hammer_and_wrench: Link do Repositório https://github.com/magicball-network/discourse-darkvisitors
:open_book: Guia de Instalação Como instalar plugins no Discourse

Funcionalidades

Dark Visitors é um serviço que acompanha agentes (rastreadores, scrapers e outros tipos de bots) que visitam seus sites. Sua principal atenção é para a análise de agentes de IA.

Ele oferece dois serviços:

  • Geração e monitoramento de robots.txt
  • Análise de agentes; tanto do lado do servidor quanto do lado do cliente

O serviço robots.txt é gratuito. Os serviços de análise oferecem um nível gratuito. Sugiro que você visite o site deles para mais informações.

Este plugin Discourse se conecta a todos esses serviços, todos opcionais e configuráveis em certo grau.

Geração de robots.txt

O Discourse já oferece uma opção para configurar o robots.txt. Este plugin o estende. Quando habilitado, o plugin recupera uma lista de agentes em diferentes categorias (atualmente apenas categorias de IA são suportadas) e aqueles que estão faltando nos agentes já configurados, ele os adicionará. A lista será atualizada diariamente. Desta forma, quando um novo scraper de IA for reconhecido, ele será adicionado ao seu robots.txt.

Este recurso só funciona se o Discourse gerenciar o robots.txt e você não o substituiu manualmente. O plugin não altera a configuração User agents de rastreadores bloqueados, ele aumenta o robots.txt com novos agentes ausentes. Assim, você ainda tem controle total sobre o gerenciamento desta lista.

Ao visitar o robots.txt do seu site, você verá um comentário inicial da última atualização e o número de agentes retornados pelo Dark Visitors. Os agentes que ainda não foram configurados são adicionados ao final da lista. Eles devem ficar entre o Googlebot e a diretiva do sitemap (se configurada).

Análise de agentes

Tanto a análise do lado do servidor quanto a do lado do cliente podem ser habilitadas individualmente. Ela pode ser habilitada para todos os visitantes ou apenas para visitantes não autenticados.

A análise do lado do servidor relata visitas rastreadas ao Dark Visitors. Ela enviará o caminho da solicitação, o endereço IP remoto do visitante, o cabeçalho User-Agent e alguns mais cabeçalhos do navegador.

Existem algumas configurações adicionais para quais solicitações são relatadas, veja as configurações abaixo. Por padrão, apenas as solicitações que o Discourse marca para rastrear como visualizações serão rastreadas. As seguintes solicitações ao Discourse nunca serão relatadas:

  • Solicitações para a seção de Administração
  • Solicitações de segundo plano e de API

A análise do lado do cliente é tratada adicionando Javascript à sua página, que se comunica com o Dark Visitors sob certas condições:

  • O navegador parece ser automatizado ou um navegador de IA
  • O usuário veio de um serviço de chat de IA

Todas as solicitações rastreadas contam para os eventos que afetam seu plano de pagamento.

Configuração

Você precisa se inscrever no Dark Visitors para usar este plugin. O nível gratuito oferece 1.000.000 de eventos por mês. Quando esse limite for atingido, você não verá mais eventos em suas análises, mas ainda poderá enviar novas informações e continuar usando o serviço robots.txt.

Após se inscrever, você deve criar um projeto (ou seja, um site para rastrear). Isso fornecerá um token de acesso que é necessário para a funcionalidade robots.txt e de análise do lado do servidor.

Quando você habilita a funcionalidade robots.txt, leva um tempo para que ela seja atualizada. Visite https://seusite/robots.txt para ver se está funcionando. Deve haver um comentário no topo

# Aumentado por Dark Visitors em 2025-05-07T12:46:00+00:00 com 28 agentes

Quando você habilita a análise do lado do servidor, pode testar se ela funciona solicitando uma visita de teste nas configurações do projeto do Dark Visitor. Isso pode levar alguns segundos. Você deverá ver o resultado na página Tempo Real no Dark Visitors.

Configurações

Nome Descrição
darkvisitors enabled Sinalizador global para habilitar todo o plugin
darkvisitors access token O token de acesso secreto necessário para o robots.txt e a análise do lado do servidor para se comunicar com o Dark Visitors. Você encontrará isso no seu projeto Dark Visitor em configurações.
darkvisitors robots txt enabled Quando habilitado, o robots.txt do Discourse será aumentado com agentes adicionais
darkvisitors robots txt agents O tipo de agentes a serem adicionados ao robots.txt.
darkvisitors robots txt path O caminho para negar o acesso dos agentes. Provavelmente é melhor deixar como / para que o acesso a todo o site seja rejeitado.
darkvisitors server analytics Habilita a análise do lado do servidor. Recomendo habilitá-lo apenas para usuários anônimos.
darkvisitors server analytics include Solicitações adicionais a serem rastreadas. Você também pode rastrear solicitações para arquivos enviados ou até mesmo solicitações de 404 Não Encontrado.
darkvisitors server analytics ignore Substrings nos user agents a serem ignoradas (diferenciação de maiúsculas e minúsculas). Se você usa monitoramento de tempo de atividade, sugiro fortemente incluir seu user agent de identificação nesta lista.
darkvisitors client analytics Habilita a análise do lado do cliente. Isso também lhe dará insights sobre usuários normais visitando seu fórum enquanto vêm de um serviço de chat de IA.
darkvisitors client analytics project key Para análise do lado do cliente, você deve configurar a chave de projeto (pública). Você pode encontrá-la nas configurações do seu projeto Dark Visitors na seção JavaScript Tag, é o código após project_key=
5 curtidas

Obrigado por isso, elmuerte! Configurei e está funcionando muito bem.

Vejo que nas configurações do plugin, os tipos de agente que podem ser selecionados para exclusão via robots.txt são:

  • AI Data Scraper [selecionado por padrão]
  • Undocumented AI Agent [selecionado por padrão]
  • AI Agent
  • AI Assistant
  • AI Search Crawler

Mas a lista completa dos tipos de agente Dark Visitors é:
(negrito = adicional)

Crawlers e Scrapers…

  • AI Assistant
  • AI Data Scraper
  • AI Search Crawler
  • Archiver
  • Developer Helper
  • Fetcher
  • Intelligence Gatherer
  • Scraper
  • Search Engine Crawler
  • Security Scanner
  • SEO Crawler
  • Uncategorized Agent
  • Undocumented AI Agent

AI Agents…

  • AI Agent
  • Headless Agent

Nem todos esses tipos de agente são algo que se queira bloquear, mas eu gostaria de incluir alguns como Scraper, AI Data Scraper, SEO Crawler…

Esses tipos de agente adicionais são apenas mais recentes que o seu plugin? Eles poderiam ser adicionados à lista atual de escolhas em settings.yml?

Exceto que robots.txt é apenas um pedido. Um bot o segue ou não. Firewall é a única maneira de parar aqueles.

Sim, eu entendo isso – mas como o Dark Visitors só funciona com o robots.txt, eu gostaria de fazê-lo funcionar o melhor possível.

(Na verdade, estou lendo alguns posts agora onde você sugere bloqueio real com proxy reverso Nginx, mas não tenho certeza se preciso ir tão longe ainda.)

Isso é um pouco radical. Mas o Dark Visitor deve funcionar com a lista de banidos do Discourse para ser útil em algum nível. Claro, com isso você não precisa adicionar manualmente, por exemplo, OpenAI ou outros que seguem o robots.txt.

Entrei em contato com a Dark Visitors sobre isso em 3 de maio deste ano, e a resposta deles foi “No momento não”. Mas vejo que a documentação atual lista ainda mais tipos agora.

No momento, os seguintes tipos são suportados pela API Dark Visitors:

Certifiquei-me de que a configuração no Discourse pode ser estendida com tipos de agente adicionais apenas adicionando-os.

Após adicionar o novo tipo e salvar a configuração, o robots.txt deve ser atualizado imediatamente com todos os novos agentes.

1 curtida

OMG, eu perdi totalmente o campo “Pesquisar ou criar”. Meu tema tem um contraste muito baixo lá e escapou dos meus olhos. Obrigado pelo esclarecimento!