Telnet MCP Server

Un cliente telnet seguro para aplicaciones LLM, diseñado para el análisis defensivo de seguridad de dispositivos de red.

Documentación

Servidor MCP Telnet

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona capacidades seguras de cliente telnet para Claude Code y otras aplicaciones de LLM. Diseñado para análisis de seguridad defensiva de dispositivos de red.

Características

  • Cliente Telnet Seguro: Conéctese a dispositivos router con filtrado de comandos
  • Soporte de Protocolo MCP: Cumplimiento completo de JSON-RPC 2.0 para integración con Claude Code
  • Características de Seguridad: Filtrado de comandos, registro de auditoría, gestión de sesiones
  • Gestión de Routers: Soporte para múltiples conexiones concurrentes a routers
  • Registro Integral: Rastro de auditoría detallado para cumplimiento y seguridad

Inicio Rápido

Requisitos Previos

  • Go 1.21 o posterior
  • Claude Code o cliente MCP compatible
  • Acceso de red a los dispositivos router objetivo

Instalación

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

Configuración

Integración con Claude Code

Agregue a su configuración de 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"
      }
    }
  }
}

Variables de Entorno

  • ROUTER_IPS: Lista separada por comas de direcciones IP de routers permitidas
  • LOG_LEVEL: Nivel de registro (debug, info, warn, error)
  • AUDIT_LOG_PATH: Ruta al archivo de registro de auditoría (predeterminado: /tmp/telnet-mcp-audit.log)

Herramientas Disponibles

telnet_connect

Conéctese a un dispositivo router.

Parámetros:

  • host (obligatorio): Dirección IP del router
  • port (opcional): Puerto telnet (predeterminado: 23)
  • timeout (opcional): Tiempo de espera de conexión en segundos (predeterminado: 30)

telnet_execute_command

Ejecute un comando en el router conectado.

Parámetros:

  • host (obligatorio): Dirección IP del router
  • command (obligatorio): Comando a ejecutar
  • timeout (opcional): Tiempo de espera del comando en segundos (predeterminado: 10)

telnet_disconnect

Desconéctese del dispositivo router.

Parámetros:

  • host (obligatorio): Dirección IP del router
  • port (opcional): Puerto telnet (predeterminado: 23)

Características de Seguridad

Filtrado de Comandos

El servidor utiliza un modelo de seguridad de lista negra que permite la mayoría de los comandos mientras bloquea solo operaciones peligrosas:

Enfoque de Seguridad:

  • Permitir por Defecto: Todos los comandos están permitidos por defecto
  • Lista Negra Mínima: Solo se bloquean comandos peligrosos
  • 🔍 Auditoría Completa: Todos los comandos se registran independientemente de su estado

Comandos Permitidos (Ejemplos):

  • Operaciones de archivos: cat, head, tail, more, less, grep, find
  • Información del sistema: ls, ps, top, df, free, uptime, whoami
  • Herramientas de red: ping, traceroute, nslookup, dig, netstat
  • Comandos de router: show version, show config, show interfaces, etc.
  • Procesamiento de texto: awk, sed, sort, uniq, wc, cut

Comandos Bloqueados:

  • Configuración: configure, config, write memory, wr
  • Destructivos: delete, del, erase, format, factory-reset
  • Control del sistema: reload, reboot, restart, shutdown, halt, reset
  • Firmware: boot (con espacio), upgrade, update

Registro de Auditoría

Todas las actividades se registran en el archivo de auditoría con marcas de tiempo:

  • Eventos de conexión
  • Ejecuciones de comandos
  • Violaciones de seguridad
  • Condiciones de error

Ejemplos de Uso

Análisis Básico de Router

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

Descubrimiento de Red

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

Auditoría de Seguridad

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

Desarrollo

Compilación

go build -o telnet-mcp-server

Pruebas

go test ./...

Ejecución en Desarrollo

go run main.go

Consideraciones de Seguridad

  • Esta herramienta está diseñada solo para análisis de seguridad defensiva
  • Todas las comunicaciones se registran con fines de auditoría
  • El filtrado de comandos previene operaciones destructivas
  • Úsela solo en redes internas de confianza
  • Revise los registros de auditoría regularmente para monitoreo de seguridad

Solución de Problemas

Problemas de Conexión

  1. Verifique la conectividad de red con los dispositivos objetivo
  2. Compruebe las reglas de firewall y la accesibilidad de puertos
  3. Asegúrese de que el servicio telnet esté ejecutándose en los dispositivos objetivo
  4. Revise la configuración de tiempos de espera

Problemas de Ejecución de Comandos

  1. Compruebe la sintaxis del comando para su tipo de router
  2. Verifique que el comando esté en la lista permitida
  3. Revise los registros de auditoría para comandos bloqueados
  4. Asegúrese del estado adecuado de la sesión

Integración con Claude Code

  1. Verifique la ruta de configuración del servidor MCP
  2. Compruebe las variables de entorno
  3. Revise los registros de Claude Code para errores de MCP
  4. Asegúrese de que el binario del servidor tenga permisos de ejecución

Licencia

Licencia MIT - Consulte el archivo LICENSE para más detalles.

Contribuciones

  1. Haga un fork del repositorio
  2. Cree una rama de características
  3. Realice sus cambios
  4. Agregue pruebas si corresponde
  5. Envíe una solicitud de extracción

Soporte

Para problemas y preguntas:

  • Consulte la sección de solución de problemas
  • Revise los registros de auditoría
  • Abra un problema en GitHub