У меня есть лабораторная установка, где я пытаюсь использовать SCP через SNMP к маршрутизатору cisco. Я нашел некоторую онлайн-документацию, такую как: http://ccie20728.wordpress.com/2008/05/20/get-the-cisco- конфигурация поверх SNMP /
Вот мои настройки высокого уровня. На роутере:
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
Чтобы маршрутизатор работал в качестве сервера SCP, необходимо включить его с помощью вышеупомянутого cmd. На сервере Ubuntu я установил / запустил openSSH и выполняю следующие команды:
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
Затем, чтобы проверить статус, я делаю snmpget и / или snmpwalk через:
snmpwalk -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.10.111
когда я запускаю это, я получаю целое число (2), что означает, что он работает, затем он переходит к целому числу (4), что означает, что он потерпел неудачу.
Затем я проверяю причину отказа:
snmpwalk -c cisco -v 2c <router ip addr> 1.3.6.1.4.1.9.9.96.1.1.1.1.13.111
и я получаю целое число (2), что означает «badfilename».
Итак, я пробовал разные перестановки имени файла для строки «.6.111» выше, включая разные расширения файлов, с и без переносов, то же имя файла, что и у запущенных команд конфигурации, даже указанный абсолютный путь к файлу, но ни одна из них не работает.
Я попытался отладить sshd
с различными уровнями ведения журнала и не получить вывод из сохраненного / сохраненного файла системного журнала.
Кто-нибудь смог заставить это работать?
Ответы:
Я только что попробовал это на моем CPE:
Который копирует работающий config (4) в сеть (1), поменяв их местами, вы можете изменить направление (от сети к работающей).
Запустив вышеуказанный скрипт, мой домашний каталог будет иметь файл 'filename', который содержит мой CPE running-config:
Помимо того, что @daniel упоминает также, что ваш '14' или 'rowstatus' неверен, вы используете 1 'active', в то время как вы должны использовать 4 'createAndGo'.
источник
Согласно Cisco SNMP Object Navigator, значение 4 не поддерживается для 1.3.6.1.4.1.9.9.96.1.1.1.1.3. Вместо этого значение 2 означает running-config:
Вероятно, поэтому вы получаете ошибку badFileName.
РЕДАКТИРОВАТЬ:
На самом деле кажется, что существует противоречие между SNMP Object Navigator и определением MIB , так как тип для
ccCopySourceFileType
иccCopyDestFileType
вConfigFileType
соответствии с определением MIB:И это, кажется, подтверждается ответом YTTI
источник
Я разместил это раньше: http://checkforbees.com/router-backup/
Я думаю, что ваша проблема связана с несколькими snmpset. Вы должны начать с создания записи, чтобы сделать это. [14.xxx = 5 (createAndWait)] Затем вы можете настроить запись по мере необходимости, прежде чем установить для rowStatus значение «1» (активное).
[Примечание: моим сценариям уже десятилетия, поэтому они настроены на tftp.]
Я зацикливаюсь на ... 10.111 (состояние), пока оно "работает". Я подозреваю, что вы никогда не удаляли свою запись "111". В противном случае это ваша точная последовательность
snmpset
s против 2960S с ssh-сервером linux box. (как подсказывает моя подсказка, коробка Debian.)источник
badFilename
также может указывать на ошибку входа в SSH, но я получаюnoConfig(5)
за это. (что противоположно тому, что следует сказать)badFileName(2)
от 12.4Т. (2960S - 15.x)Проверьте здесь: Как скопировать файлы конфигурации на и с маршрутизаторов Cisco IOS, которые используют SNMP
Измените
ccCopyProtocol
на желаемый способ перевода:Вот скрипт bash для автоматизации резервного копирования конфигурации.
источник