Telnet MCP Server

Um cliente telnet seguro para aplicações LLM, projetado para análise de segurança defensiva de dispositivos de rede.

Documentação

Telnet MCP Server

Um servidor Model Context Protocol (MCP) que fornece capacidades de cliente telnet seguro para Claude Code e outras aplicações de LLM. Projetado para análise de segurança defensiva de dispositivos de rede.

Recursos

  • Cliente Telnet Seguro: Conecte-se a dispositivos roteadores com filtragem de comandos
  • Suporte ao Protocolo MCP: Conformidade total com JSON-RPC 2.0 para integração com Claude Code
  • Recursos de Segurança: Filtragem de comandos, registro de auditoria, gerenciamento de sessões
  • Gerenciamento de Roteadores: Suporte para múltiplas conexões simultâneas de roteadores
  • Registro Abrangente: Trilha de auditoria detalhada para conformidade e segurança

Início Rápido

Pré-requisitos

  • Go 1.21 ou posterior
  • Claude Code ou cliente MCP compatível
  • Acesso de rede aos dispositivos roteadores de destino

Instalação

  1. Clone e compile:
git clone <repository>
cd telnet-mcp-server
go mod tidy
go build -o telnet-mcp-server
  1. Configure o Claude Code:
# Copy example configuration
cp claude_config_example.json ~/.config/claude-code/config.json
  1. Execute com o Claude Code:
claude-code

Configuração

Integração com Claude Code

Adicione à sua configuração do Claude Code:

{
  "mcpServers": {
    "telnet-proxy": {
      "transport": "stdio",
      "command": "./telnet-mcp-server",
      "env": {
        "ROUTER_IPS": "10.98.1.131,10.98.1.171",
        "LOG_LEVEL": "info"
      }
    }
  }
}

Variáveis de Ambiente

  • ROUTER_IPS: Lista separada por vírgulas de endereços IP de roteadores permitidos
  • LOG_LEVEL: Nível de registro (debug, info, warn, error)
  • AUDIT_LOG_PATH: Caminho para o arquivo de registro de auditoria (padrão: /tmp/telnet-mcp-audit.log)

Ferramentas Disponíveis

telnet_connect

Conecte-se a um dispositivo roteador.

Parâmetros:

  • host (obrigatório): Endereço IP do roteador
  • port (opcional): Porta telnet (padrão: 23)
  • timeout (opcional): Tempo limite de conexão em segundos (padrão: 30)

telnet_execute_command

Execute um comando no roteador conectado.

Parâmetros:

  • host (obrigatório): Endereço IP do roteador
  • command (obrigatório): Comando a ser executado
  • timeout (opcional): Tempo limite do comando em segundos (padrão: 10)

telnet_disconnect

Desconecte-se do dispositivo roteador.

Parâmetros:

  • host (obrigatório): Endereço IP do roteador
  • port (opcional): Porta telnet (padrão: 23)

Recursos de Segurança

Filtragem de Comandos

O servidor usa um modelo de segurança de lista negra que permite a maioria dos comandos enquanto bloqueia apenas operações perigosas:

Abordagem de Segurança:

  • Permissão Padrão: Todos os comandos são permitidos por padrão
  • Lista Negra Mínima: Apenas comandos perigosos são bloqueados
  • 🔍 Auditoria Completa: Todos os comandos são registrados independentemente do status

Comandos Permitidos (Exemplos):

  • Operações de arquivo: cat, head, tail, more, less, grep, find
  • Informações do sistema: ls, ps, top, df, free, uptime, whoami
  • Ferramentas de rede: ping, traceroute, nslookup, dig, netstat
  • Comandos de roteador: show version, show config, show interfaces, etc.
  • Processamento de texto: awk, sed, sort, uniq, wc, cut

Comandos Bloqueados:

  • Configuração: configure, config, write memory, wr
  • Destrutivos: delete, del, erase, format, factory-reset
  • Controle do sistema: reload, reboot, restart, shutdown, halt, reset
  • Firmware: boot (com espaço), upgrade, update

Registro de Auditoria

Todas as atividades são registradas no arquivo de auditoria com carimbos de data/hora:

  • Eventos de conexão
  • Execuções de comandos
  • Violações de segurança
  • Condições de erro

Exemplos de Uso

Análise Básica de Roteador

# In Claude Code
Connect to router 10.98.1.131 and analyze its configuration for security vulnerabilities.

Descoberta de Rede

# In Claude Code
Map the network topology by connecting to both routers and examining their routing tables.

Auditoria de Segurança

# In Claude Code
Perform a comprehensive security audit of router 10.98.1.171, checking for default passwords, insecure protocols, and misconfigurations.

Desenvolvimento

Compilação

go build -o telnet-mcp-server

Testes

go test ./...

Execução em Desenvolvimento

go run main.go

Considerações de Segurança

  • Esta ferramenta é projetada apenas para análise de segurança defensiva
  • Todas as comunicações são registradas para fins de auditoria
  • A filtragem de comandos previne operações destrutivas
  • Use apenas em redes internas confiáveis
  • Revise os registros de auditoria regularmente para monitoramento de segurança

Solução de Problemas

Problemas de Conexão

  1. Verifique a conectividade de rede com os dispositivos de destino
  2. Verifique as regras de firewall e a acessibilidade das portas
  3. Garanta que o serviço telnet esteja em execução nos dispositivos de destino
  4. Revise as configurações de tempo limite na configuração

Problemas de Execução de Comandos

  1. Verifique a sintaxe do comando para o seu tipo de roteador
  2. Verifique se o comando está na lista de permitidos
  3. Revise os registros de auditoria para comandos bloqueados
  4. Garanta o estado adequado da sessão

Integração com Claude Code

  1. Verifique o caminho de configuração do servidor MCP
  2. Verifique as variáveis de ambiente
  3. Revise os registros do Claude Code para erros de MCP
  4. Garanta que o binário do servidor tenha permissões de execução

Licença

Licença MIT - Consulte o arquivo LICENSE para detalhes.

Contribuição

  1. Faça um fork do repositório
  2. Crie um branch de funcionalidade
  3. Faça suas alterações
  4. Adicione testes se aplicável
  5. Envie um pull request

Suporte

Para problemas e perguntas:

  • Consulte a seção de solução de problemas
  • Revise os registros de auditoria
  • Abra uma issue no GitHub