Cisco SSH MCP Server
Conecte-se, configure e monitore dispositivos de rede Cisco, como roteadores e switches, via SSH.
Documentação
Cisco SSH MCP Server
Um servidor Model Context Protocol (MCP) para gerenciar conexões SSH a dispositivos de rede Cisco. Este servidor fornece ferramentas para conectar, configurar e monitorar roteadores e switches Cisco via SSH.
Recursos
- Múltiplas Conexões SSH: Gerencie conexões com vários dispositivos Cisco simultaneamente
- Execução de Comandos: Execute qualquer comando CLI em dispositivos conectados
- Gerenciamento de Configuração: Entre no modo de configuração e aplique alterações de configuração
- Comandos Show: Execute comandos show com análise opcional de saída
- Acesso Bruto ao Terminal: Envie texto bruto para sessões interativas
- Gerenciamento de Conexões: Liste, conecte e desconecte de dispositivos
- Autenticação Segura: Suporte para autenticação baseada em senha e chave
Instalação
npm install
npm run build
Uso
Como um Servidor MCP
Configure seu cliente MCP (como o Cline) para usar este servidor:
{
"mcpServers": {
"cisco-ssh": {
"command": "node",
"args": ["path/to/cisco-ssh-mcp/dist/index.js"]
}
}
}
Uso na Linha de Comando
# Start the MCP server
npm start
# Start with default connection parameters
cisco-ssh-mcp --host 192.168.1.1 --username admin
Ferramentas Disponíveis
cisco_connect
Conecte a um dispositivo Cisco via SSH.
Parâmetros:
host(obrigatório): Endereço IP ou nome de hostusername(obrigatório): Nome de usuário SSHpassword: Senha SSHprivateKey: Chave privada para autenticaçãoport: Porta SSH (padrão: 22)connectionId: Identificador único para a conexão
cisco_exec
Execute um comando em um dispositivo conectado.
Parâmetros:
command(obrigatório): Comando a executarconnectionId: Qual conexão usartimeout: Tempo limite do comando em milissegundos
cisco_config
Entre no modo de configuração e execute comandos de configuração.
Parâmetros:
commands(obrigatório): Matriz de comandos de configuraçãoconnectionId: Qual conexão usarsave: Se deve salvar a configuração após as alterações
cisco_show
Execute comandos show com análise opcional de saída.
Parâmetros:
command(obrigatório): Comando show a executarconnectionId: Qual conexão usarparseOutput: Analisar a saída em formato estruturado
cisco_send_raw
Envie texto bruto para a conexão SSH.
Parâmetros:
text(obrigatório): Texto bruto a enviarconnectionId: Qual conexão usarwaitForPrompt: Aguardar o prompt de comando
cisco_list_connections
Liste todas as conexões SSH ativas.
cisco_disconnect
Desconecte de um dispositivo.
Parâmetros:
connectionId: Conexão a desconectar
Exemplos
Conectando a um Dispositivo
// Connect using password
{
"tool": "cisco_connect",
"arguments": {
"host": "192.168.1.1",
"username": "admin",
"password": "cisco123",
"connectionId": "router1"
}
}
// Connect using SSH key
{
"tool": "cisco_connect",
"arguments": {
"host": "192.168.1.1",
"username": "admin",
"privateKey": "-----BEGIN RSA PRIVATE KEY-----\\n...",
"connectionId": "router1"
}
}
Executando Comandos
// Show interface status
{
"tool": "cisco_show",
"arguments": {
"command": "show ip interface brief",
"parseOutput": true
}
}
// Configure an interface
{
"tool": "cisco_config",
"arguments": {
"commands": [
"interface GigabitEthernet0/1",
"ip address 192.168.10.1 255.255.255.0",
"no shutdown"
],
"save": true
}
}
Considerações de Segurança
- Use chaves SSH em vez de senhas quando possível
- Implemente segmentação de rede adequada para tráfego de gerenciamento
- Habilite o registro de todos os comandos executados
- Use VLANs de gerenciamento dedicadas
- Implemente controles de acesso e autenticação adequados
Solução de Problemas
- Tempo Limite de Conexão: Verifique a conectividade de rede e o serviço SSH no dispositivo
- Falha na Autenticação: Verifique as credenciais e a configuração SSH
- Tempo Limite de Comando: Aumente os valores de tempo limite para dispositivos lentos
- Permissão Negada: Garanta que o usuário tenha privilégios adequados
Licença
Licença MIT - consulte o arquivo LICENSE para obter detalhes.