Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
stop-bots — Automatize o bloqueio de bots maliciosos que tentam acessar seu servidor | Kitploit
Ferramentas/GitHubGitHub/ivankovic/stop-bots
Ferramentas DefensivasAuditoria de ConfiguraçãoColeta de InformaçõesSegurança WebSegurança de RedeUtilitários e FrameworksDetecção de IntrusãoAnti-BotAnálise de Logs
GitHubivankovic/stop-bots

stop-bots

Automatize o bloqueio de bots maliciosos que tentam acessar seu servidor

396há 4 diasAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Ver Repositório
Compartilhar

Stop Bots

CI crates.io Coverage License: AGPL v3+

Uma TUI, um console web e uma CLI que ajudam você a configurar seu servidor para bloquear bots maliciosos sem se esconder atrás de um CDN.

Funciona em conjunto com o NGINX e seu firewall existente (nftables ou iptables):

  • Configuração do NGINX. - Classifica bots conhecidos por categoria (scanners, mecanismos de busca, rastreadores de IA) e os bloqueia ou permite injetando uma regra nas configurações do seu site. Ele analisa o log do NGINX para detectar bots dinamicamente e bloqueá-los mesmo que nenhum conjunto de regras os rastreie ainda.
  • Um script de firewall. - Bloqueie países inteiros, faixas de IP de datacenters, faixas de IP de bots conhecidos ou qualquer endereço IP que tente fazer login no seu servidor sem sucesso repetidamente. Cada bloqueio registra o motivo de sua existência.

As cinco telas em sequência: Dashboard, Bot settings, Firewall, NGINX e Blocks

O aplicativo faz o possível para não bloquear seu acesso ao servidor, mas você o usa por sua conta e risco. E observe que ele é licenciado sob AGPL, então se você o estiver usando comercialmente, certifique-se de obedecer à licença.

Início rápido

Instalação

No Debian ou Ubuntu, a partir do repositório APT:

curl -fsSL https://ivankovic.github.io/stop-bots/key.gpg \
  | sudo tee /usr/share/keyrings/stop-bots.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/stop-bots.gpg] \
https://ivankovic.github.io/stop-bots stable main" \
  | sudo tee /etc/apt/sources.list.d/stop-bots.list
sudo apt update && sudo apt install stop-bots

O pacote traz man stop-bots (e uma página por verbo, como man stop-bots-batch) e completions para bash, zsh e fish. Ele não instala nenhum serviço e não inicia nada.

Ou a partir do crates.io, com Rust 1.88 ou mais recente:

cargo install stop-bots

Ou baixe um binário estático para Linux x86_64 ou aarch64 a partir das releases do GitHub.

Plataformas suportadas

  • Debian e Ubuntu, com systemd e NGINX. É o que é testado. O install recusa um host que não seja Debian ou um derivado.
  • Não Apache ou Caddy. Os logs de acesso deles podem ser analisados, mas tudo o que escreve configuração de servidor web é exclusivo do NGINX.
  • Dependências de runtime: nft, ou iptables-restore e ip6tables-restore, para o firewall; nginx para o resto. NGINX em um contêiner também funciona — veja Executando NGINX em um contêiner.

Na TUI

  1. sudo stop-bots inicia a TUI. Ela precisa de root: reescreve /etc/nginx e carrega regras de firewall.
  2. u baixa todas as listas: listas de bots, faixas de IP de crawlers e qualquer feed ou país que você ativou.
  3. Revise. O Dashboard (1) contém a política de todo o host: quais categorias de bots são bloqueadas, países e os detectores que leem seus logs. Na tela do NGINX (4), r encontra seus sites. A tela de Blocks (5) lista cada regra que os detectores ou você adicionou, e por quê.
  4. a aplica tudo. Primeiro mostra o que mudaria — os arquivos, as regras adicionadas e removidas, e o veredito da verificação de lockout (d para o diff) — e pergunta.
  5. sudo stop-bots install firewall faz as regras aplicadas sobreviverem a um reboot. Sem isso, um reboot volta sem nenhuma regra.
  6. sudo stop-bots status verifica o kernel, as units e os arquivos, e diz o que está faltando.

O mesmo pela CLI, para scripts

sudo stop-bots status
sudo stop-bots batch --dry-run --diff
sudo stop-bots batch --apply
sudo stop-bots install firewall
sudo stop-bots status

batch --dry-run não baixa nem analisa nada: numa instalação nova, mostra os blocos NGINX da lista de bots incorporada no binário, e ainda nenhuma regra de firewall, porque nada foi lido dos seus logs. sudo stop-bots batch sem --apply faz os downloads e as análises e escreve os ficheiros para revisão sem os aplicar. Consulte Unattended, from cron para saber o que batch faz.

Undo

sudo stop-bots uninstall all --dry-run
sudo stop-bots uninstall all

A primeira lista cada passo, a segunda executa-os. Ver Atualizar e desinstalar.

Contra o que protege

Usar a configuração do NGINX

  • Bots conhecidos, por categoria (scanner / motor de busca / crawler de IA), provenientes das listas Well-Known Bots da ArcJet, ai.robots.txt e NGINX Ultimate Bad Bot Blocker. Bloquear uma categoria injeta uma regra if ($http_user_agent ...) na configuração NGINX de cada site.

  • Demasiados pedidos, através do próprio rate limiting do NGINX.

  • Educadamente, primeiro — um robots.txt gerado que lista todos os bots que está a bloquear, para os crawlers que o respeitam, mais o caminho honeypot abaixo.

  • Exceto onde disser o contrário — isenções de caminhos por site, e endereços e user agents de confiança (trust), aos quais nenhum bloqueio, lista ou rate limit se aplica.

  • Pedidos que não parecem um navegador, por site. Seis regras independentes, cada uma com o seu interruptor e todas desligadas por predefinição — um interruptor por regra, para que se algo seu deixar de funcionar, consiga perceber qual regra o fez:

    RegraRejeita, além de bots
    HTTP/1.0 e HTTP/1.1crawlers e clientes de API que não falam HTTP/2
    Sem cabeçalho Acceptalguns clientes de API não enviam nenhum
    Sem Accept-Languageferramentas de privacidade removem-no
    User-Agent vazio/ausentescripts e health checks frequentemente omitem-no
    Host é um IP simplesimpede aceder ao site por IP
    TLS 1.0 / 1.1apenas clientes muito antigos

O que um pedido bloqueado recebe realmente

Há sete escolhas:

OpçãoPara que serve
403 Forbidden (predefinição)diz que o bloqueio foi deliberado; a única sobre a qual um humano apanhado por engano pode agir
404 Not Foundesconde que algo foi bloqueado
410 Gonepede a crawlers bem-comportados que descartem o URL para sempre — prefira isto ao 403 quando está a rejeitar crawlers em vez de atacantes
429 Too Many Requestsdiz a um cliente educado para recuar e tentar de novo
418 I'm a teapota piada do RFC 2324. Funciona; só não está registado na IANA, e o NGINX envia-o com corpo vazio
444 close connectionnenhuma resposta; o mais barato, mas indistinguível de o servidor estar em baixo
Tarpitresponde 403 mas envia o corpo a um byte por segundo, para que o cliente espere em vez de avançar

O tarpit é a opção mais suave para um falso positivo — um cliente apanhado por engano é abrandado, não recusado — e a mais dura em custo para um bot, cuja ligação fica inativa. Uma coisa a saber antes de o escolher: também ocupa uma das suas worker connections durante o mesmo tempo, pelo que uma inundação de clientes em tarpit compete com visitantes reais por worker_connections.

Dos seus logs, automaticamente

Baixar ferramenta