Possível configurar o Cisco Switch (IOS) através do SNMP?

2

É possível configurar um switch Cisco executando o IOS via SNMP? Eu sei que existe um método para iniciar uma cópia TFTP via SNMP ( doc ) , mas há algo como configuração de nível de porta diretamente de gravações SNMP?

Como alternativa, existe uma maneira de iniciar a transferência de um fragmento de configuração para aplicar, em vez de substituir toda a configuração?

Deixe-me saber se você gostaria de algo esclarecido. Eu estou tentando evitar o uso de esperar ou qualquer coisa que não é semelhante ao acesso a uma API.

    
por brent 03.09.2010 / 19:35

4 respostas

3

Para responder a minha própria pergunta, não parece que a Cisco forneça configuração de alta granularidade via SNMP (por exemplo, configuração de porta), mas fornece um método para iniciar uma cópia de configuração FTP / TFTP / SCP no comutador. Essa cópia pode ser executada na configuração em execução, o que permite mesclar. Isso significa que um trecho de configuração pode ser gravado em um arquivo de texto e, em seguida, TFTP'd no comutador que será mesclado com a configuração em execução, em vez de substituí-lo. Se estiver copiando para a configuração inicial, uma operação de mesclagem não será concluída, substituindo a configuração inteira. Uma distinção importante;)

Detalhes aqui: link

    
por 07.09.2010 / 16:00
2

Sim, é possível. Veja esta nota técnica sobre a configuração de VLANs para um exemplo.

Você pode ver quais MIBs são suportados em seu switch executando o comando show snmp mib de um terminal ativado.

    
por 07.06.2011 / 13:22
0

Eu sinceramente não sei de nenhum motivo que você não possa configurar o IOS via SNMP ... no entanto, sugiro que NÃO faça isso. O SNMP é muito inseguro. Se você não estiver preocupado com a segurança, pode simplesmente despejar suas alterações de configuração em um arquivo de texto & reproduzi-las cegamente em uma sessão de telnet ... o que eu também recomendaria não fazer.

    
por 03.09.2010 / 20:35
0

Eu não vi nenhum guia snmp usando snmpv3 e scp como protocolo de transporte. Para quem quer implementar, aqui está o que funcionou para mim.

Como com os outros guias de cópia de configuração do snmp, você precisará baixar o respectivo MIBS e carregá-los no arquivo snmp.conf.

Esta postagem abordará especificamente os comandos do snmpset para uma configuração da v3.

SNMP Environment:

Name        : net-snmp
Version     : 5.7.2
Release     : 17.fc20

arquivo conf snmp em ~ / .snmp / snmp.conf

contém

defSecurityName XXX <- replace with v3 username
defContext ""
defAuthType SHA
defPrivType AES
defSecurityLevel authPriv
defAuthPassphrase ***** <-replace with authentication pass
defPrivPassphrase *****  <-replace with encryption pass
defVersion 3
showMibErrors no
mibs ALL

Eu verificaria a funcionalidade básica do snmpv3 com um snmpwalk de algo simples como o sysUpTime. Quando isso for bom, prossiga para os comandos SNMP CONFIG-COPY.

Este é o meu script bash que faz a cópia inteira solicitando apenas um único argumento de IP / Hostname do dispositivo sendo copiado. Os 2 > / dev / null mostrados no script ou na cli abaixo redirecionam STDERR para null para evitar erros de análise dos módulos MIB.

#!/usr/bin/bash
DEVICE=$1
RANNUM=42
USER=******
PASS=******
SERVER=X.X.X.X
DATE=$(date +"%m_%d_%y")

snmpset $DEVICE ccCopyProtocol.$RANNUM i 4 ccCopySourceFileType.$RANNUM i 4 ccCopyDestFileType.$RANNUM i 1 ccCopyServerAddress.$RANNUM a "$SERVER" ccCopyFileName.$RANNUM s "$DEVICE.$DATE" ccCopyUserName.$RANNUM s $USER ccCopyUserPassword.$RANNUM s $PASS ccCopyEntryRowStatus.$RANNUM i 4 2>/dev/null

Uma vez executado, você pode verificar o status da cópia com o seguinte comando.

[root@localhost hlsb]# snmpwalk sbs-tech-switch ciscoConfigCopyMIB 2>/dev/null
CISCO-CONFIG-COPY-MIB::ccCopyProtocol.42 = INTEGER: scp(4)
CISCO-CONFIG-COPY-MIB::ccCopySourceFileType.42 = INTEGER: runningConfig(4)
CISCO-CONFIG-COPY-MIB::ccCopyDestFileType.42 = INTEGER: networkFile(1)
CISCO-CONFIG-COPY-MIB::ccCopyServerAddress.42 = IpAddress: 10.10.10.193
CISCO-CONFIG-COPY-MIB::ccCopyFileName.42 = STRING: sbs-tech-switch.07_09_14
CISCO-CONFIG-COPY-MIB::ccCopyUserName.42 = STRING: XXXX
CISCO-CONFIG-COPY-MIB::ccCopyUserPassword.42 = STRING: XXXX
CISCO-CONFIG-COPY-MIB::ccCopyNotificationOnCompletion.42 = INTEGER: false(2)
CISCO-CONFIG-COPY-MIB::ccCopyState.42 = INTEGER: successful(3)
CISCO-CONFIG-COPY-MIB::ccCopyTimeStarted.42 = Timeticks: (52270199) 6 days, 1:11:41.99
CISCO-CONFIG-COPY-MIB::ccCopyTimeCompleted.42 = Timeticks: (52270339) 6 days, 1:11:43.39
CISCO-CONFIG-COPY-MIB::ccCopyEntryRowStatus.42 = INTEGER: active(1)
CISCO-CONFIG-COPY-MIB::ccCopyServerAddressType.42 = INTEGER: ipv4(1)
CISCO-CONFIG-COPY-MIB::ccCopyServerAddressRev1.42 = STRING: "10.10.10.193"

Após a conclusão da cópia bem-sucedida, a entrada existirá por cinco minutos, permitindo que nenhuma solicitação adicional seja feita com esse número aleatório específico. Para enviar outra solicitação antes da limpeza de cinco minutos da tabela, envie um snmpset "destroy" para limpar a entrada.

[root@localhost hlse]# snmpset sbs-tech-switch CISCO-CONFIG-COPY-MIB::ccCopyEntryRowStatus.42 i 6 2>/dev/null
CISCO-CONFIG-COPY-MIB::ccCopyEntryRowStatus.42 = INTEGER: destroy(6)

Espero que isso economize algum tempo para aqueles que desejam implementar uma configuração de cópia de configuração snmp mais segura.

    
por 14.08.2014 / 23:29