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.