Mam konfigurację laboratoryjną, w której próbuję używać SCP przez SNMP do routera cisco. Znalazłem dokumentację online, taką jak: http://ccie20728.wordpress.com/2008/05/20/get-the-cisco- Configuration-over-snmp /
Oto moja konfiguracja wysokiego poziomu. Na routerze:
R1(config)# username cisco password cisco
R1(config)# ip domain-name somedomain.com
R1(config)# crypto key generate rsa general-keys modulus 1024
R1(config)# aaa new-model
R1(config)# aaa authentication login cisco local
R1(config)# aaa authorization exec cisco local
R1(config)# ip scp server enable
R1(config)# line vty 0
R1(config)# login authentication cisco
R1(config)# snmp-server community cisco RW
Aby router działał jako serwer SCP, musisz włączyć powyżej cmd. Na serwerze Ubuntu mam zainstalowany / uruchomiony openSSH i wykonuję następujące polecenia:
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.2.111 i 4
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.3.111 i 4
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.4.111 i 1
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.5.111 a <svr ip addr>
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.6.111 s cisco.txt
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.7.111 s cisco
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.8.111 s cisco
snmpset -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 1
Następnie, aby sprawdzić, jaki jest status, wykonuję snmpget i / lub snmpwalk poprzez:
snmpwalk -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.10.111
kiedy to uruchamiam, otrzymuję liczbę całkowitą (2), co oznacza, że jest uruchomiona, a następnie przechodzi do liczby całkowitej (4), co oznacza, że się nie udało.
Następnie sprawdzam przyczynę niepowodzenia:
snmpwalk -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.13.111
i otrzymuję liczbę całkowitą (2), co oznacza „badfilename”.
Próbowałem więc różnych permutacji nazwy pliku dla „.6.111 łańcucha” powyżej, w tym różnych rozszerzeń plików, z łącznikami i bez nich, takiej samej nazwy pliku jak uruchomione polecenia cmds, nawet podałem bezwzględną nazwę pliku ścieżki, ale żadna z nich nie działa.
Próbowałem debugować sshd
z różnymi poziomami rejestrowania i nie otrzymałem danych wyjściowych z zapisanego / zapisanego pliku syslog.
Czy ktoś był w stanie uruchomić to?
Odpowiedzi:
Właśnie próbowałem tego na moim CPE:
Które kopie z uruchomionym config (4) do sieci (1), poprzez ich zamianę możesz zmienić kierunek (z sieci na uruchomioną)
Uruchomiony powyżej skryptu mój katalog domowy będzie miał plik „nazwa pliku”, który zawiera mój CPE running-config:
Oprócz tego, co @daniel wspomina również, że „14” lub „rowstatus” jest nieprawidłowy, używasz 1 „active”, podczas gdy powinieneś używać 4 „createAndGo”.
źródło
Według Cisco SNMP Object Navigator wartość 4 nie jest obsługiwana w 1.3.6.1.4.1.9.9.96.1.1.1.1.3. Zamiast tego wartość 2 oznacza running-config:
Prawdopodobnie dlatego pojawia się błąd badFileName.
EDYTOWAĆ:
W rzeczywistości wydaje się, że istnieje sprzeczność między SNMP Object Navigator a definicją MIB , jako typ dla
ccCopySourceFileType
iccCopyDestFileType
jestConfigFileType
i zgodnie z definicją MIB:I wydaje się to poparte odpowiedzią Ytti
źródło
Opublikowałem to wcześniej: http://checkforbees.com/router-backup/
Myślę, że twój problem dotyczy wielu snmpsetów. Musisz zacząć od utworzenia wpisu, aby to zrobić. [14.xxx = 5 (createAndWait)] Następnie możesz odpowiednio ustawić wpis, zanim ustawisz parametr rowStatus na „1” (aktywny).
[Uwaga: Moje skrypty mają dekady, więc są dostrojone do tftp.]
Zapętlam ... 10.111 (stan), kiedy „działa”. Podejrzewam, że nigdy nie usunąłeś wpisu „111”. W przeciwnym razie są to dokładne sekwencje
snmpset
s przeciwko 2960S z serwerem ssh w systemie Linux. (jak sugeruje mój monit, pudełko debiana).źródło
badFilename
może również oznaczać błąd logowania ssh, ale dostajęnoConfig(5)
za to. (co jest przeciwieństwem tego, co powinno powiedzieć)badFileName(2)
od 12,4 t. (2960S to 15.x)Sprawdź tutaj: jak skopiować pliki konfiguracyjne do iz routerów Cisco IOS korzystających z SNMP
Zmień
ccCopyProtocol
na żądaną metodę transferu:Oto skrypt bash do automatyzacji tworzenia kopii zapasowych konfiguracji.
źródło