Cria e gerencia dashboards do Grafana e alertas pré-configurados para serviços e infraestruturas comuns, sem precisar escrever queries manualmente.
shizunge/endlessh-go
Implementação em Go do tarpit SSH endlessh, com métricas Prometheus e um dashboard Grafana para estatísticas de atacantes.
- Estrelas
- 1,455
- Forks
- 55
- Issues abertas
- 18
- Último commit
- há 8 dias
O que é?
endlessh-go é uma versão de endlessh em Go: um tarpit que aceita conexões SSH e envia linhas de banner lentamente para manter bots de força bruta conectados pelo maior tempo possível. Em vez de apenas gravar logs de texto, como a versão original em C, ele expõe métricas estruturadas do Prometheus sobre o número de conexões, os bytes enviados e o tempo em que os atacantes ficaram presos.
Opcionalmente, o servidor resolve o IP de cada atacante para um geohash usando ip-api ou um banco de dados MaxMind offline, e adiciona país, localização e geohash como labels. Um dashboard do Grafana (também disponível em grafana.com como ID 15156) exibe essas métricas no período selecionado, com links dos endereços IP para consultas no ARIN.
O projeto pode ser executado como binário independente ou contêiner Docker, escuta na porta 2222 por padrão, aceita várias portas e cabeçalhos do protocolo PROXY, e inclui um endpoint HTTP opcional para healthcheck. Com as métricas ativadas, o uso de memória é cerca de 10 MB maior que o da implementação em C.
Recursos principais
- 01Expõe métricas Prometheus sobre o número de conexões, os bytes enviados e o tempo em que os atacantes ficaram presos.
- 02Resolve os IPs dos atacantes para obter país, localização e geohash via ip-api ou um banco de dados MaxMind.
- 03Inclui um dashboard do Grafana para visualizar a origem dos ataques ao longo do tempo.
- 04Aceita várias portas de escuta, seleção entre IPv4 e IPv6 e cabeçalhos do protocolo PROXY.
- 05Disponibiliza um endpoint HTTP opcional para healthcheck e uma imagem Docker com HEALTHCHECK integrado.
Casos de uso
- Monitorar o tráfego de força bruta SSH direcionado a um servidor público e identificar sua origem.
- Enviar estatísticas dos atacantes para uma stack Prometheus e Grafana existente.
- Prender scanners SSH automatizados para desperdiçar seu tempo, mantendo o sshd real em outra porta.
Início rápido
- 1
Clone o repositório e compile a partir do código-fonte
go build . - 2
Execute o servidor
./endlessh-go & - 3
Conecte-se para testar o tarpit (o cliente deve ficar travado)
ssh -p 2222 localhost
Antes de usar
- A ativação de consultas GeoIP via ip-api pode estar sujeita a limites de requisições e restrições de uso comercial.
- Usa cerca de 10 MB a mais de memória do que a implementação original em C.
- Está licenciado sob a GPL-3.0, uma licença copyleft.
Tópicos
Perguntas frequentes
- O que é endlessh-go?
- Implementação em Go do tarpit SSH endlessh, com métricas Prometheus e um dashboard Grafana para estatísticas de atacantes. endlessh-go é uma versão de endlessh em Go: um tarpit que aceita conexões SSH e envia linhas de banner lentamente para manter bots de força bruta conectados pelo maior tempo possível. Em vez de apenas gravar logs de texto, como a versão original em C, ele expõe métricas estruturadas do Prometheus sobre o número de conexões, os bytes enviados e o tempo em que os atacantes ficaram presos.
- endlessh-go é gratuito? Qual é a licença?
- endlessh-go é open source sob a licença GPL-3.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- endlessh-go ainda é mantido?
- Manutenção ativa. O último commit de endlessh-go foi em 13 de out. de 2026.
- Para que posso usar endlessh-go?
- Monitorar o tráfego de força bruta SSH direcionado a um servidor público e identificar sua origem. Enviar estatísticas dos atacantes para uma stack Prometheus e Grafana existente. Prender scanners SSH automatizados para desperdiçar seu tempo, mantendo o sshd real em outra porta.
- Como instalar endlessh-go?
- Clone o repositório e compile a partir do código-fonte: go build . Execute o servidor: ./endlessh-go & Conecte-se para testar o tarpit (o cliente deve ficar travado): ssh -p 2222 localhost
- Onde consigo endlessh-go?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/shizunge/endlessh-go
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Software auto-hospedado que executa testes de velocidade da internet em horários programados e mantém os resultados pelo período de retenção configurado.
Conjunto de dashboards personalizados do Grafana para visualizar dados do TeslaMate sobre trajetos, carregamento, eficiência, saúde da bateria e quilometragem.
App para macOS que armazena chaves SSH no Secure Enclave, impedindo a exportação de chaves privadas e permitindo controlar o acesso com Touch ID ou Apple Watch.
Sistema de alertas self-hosted para métricas, logs e fontes de dados SQL, com roteamento de notificações, agente de IA integrado e servidor MCP.
Ferramenta de linha de comando para monitorar disponibilidade, tempo de resposta e validade de certificados SSL, com alertas por notificações na área de trabalho e webhooks.