Автоматизация резервного копирования конфигурации (каждую минуту) в Cisco IOS

Я хочу, чтобы мой маршрутизатор Cisco автоматически выполнял копирование TFTP (и заполнял поля автоматически) каждые 1 минуту. Мне также хотелось бы, чтобы он работал в фоновом режиме. Кто-нибудь знает, возможно ли это /как это сделать? Я хотел бы сделать это ради просмотра текущей конфигурации моих маршрутизаторов в notepad ++ (которая обновляется в реальном времени) вместо того, чтобы делать шоу и запускать пробел 4 или 5 раз, прежде чем я получу то, что мне нужно увидеть. Я думаю, что это было бы чрезвычайно полезно для сложных лабораторий. Кроме того, макросы не работают из-за команд TFTP-сервера, требующих ввода.

16 голосов | спросил Michael May 14 SatEurope/Moscow2013-12-14T03:46:21+04:00Europe/Moscow12bEurope/MoscowSat, 14 Dec 2013 03:46:21 +0400 2013, 03:46:21

6 ответов


18

У вас есть несколько вариантов получения этого типа функций на устройстве Cisco. (Какой из них вы используете, зависит от ваших потребностей, а иногда и от нагрузки на устройство и IOS. Некоторые старые устройства /нагрузки IOS будут иметь разные возможности.)

РЕДАКТИРОВАТЬ: Вы просите об этом каждую минуту, что, как вы узнали в нашем чате об этом вопросе, приведет к запуску вашего маршрутизатора. (Особенно в GNS3.) Ниже приведены параметры, доступные для автоматизации резервного копирования резервных копий, однако я бы не рекомендовал делать это каждые 1 минуту.

Вы можете:

  1. Используйте Cisco функциональность Kron для планирования команд. Это позволит вам выполнять предопределенные команды по расписанию. Как вы указали, copy run tftp требует подтверждения файла. (Если вы не отключили подтверждение подтверждения файла , однако я не рекомендую его как обычную настройку.) Перенаправление не требует подтверждения. Таким образом, команда, используемая в планировщике, - это show run | redirect tftp: //$ SERVERIP /$ PATH /$ FILE

  2. Используйте Cisco Архивные функции для управления конфигурацией. Архив - это способ хранения нескольких копий конфигурации в последовательном порядке и откат конфигураций, если это необходимо для предыдущей версии. Копирование с помощью Kron перезаписывает предыдущую конфигурацию, в то время как Archive позволяет сохранить до 14 различных конфигурационных версий в указанном месте. См. эту ссылку в сети Cisco Learning для получения более полезной информации о архиве. В частности, как динамически установить имя файла с тегами $ h и $ t.

В любом из приведенных ниже образцов вы можете отрегулировать время до ваших потребностей, это то, что я быстро вытащил из какого-либо производственного оборудования.


Пример конфигурации, чтобы иметь конфигурацию записи Kron и возвращать ее на сервер tftp один раз в неделю:

  появление kron SaveConfig в 23:50 Mon recurring
список правил SaveConfig
!
kron появление BackupRunningConfig в 23:55 Mon recurring
список правил BackupRunningConfig
!
Список правил kron SaveConfig
cli написать
!
kron policy-list BackupRunningConfig
cli show running-config | redirect tftp: //10.10.10.10/configs/testswitch.txt
 

Пример конфигурации для резервного копирования архива на сервер tftp ежедневно:

  Архив
 path tftp: //10.10.10.10/configs/$h-$t
 период времени 1440
 максимум 14
 
ответил Brett Lykins 14 SatEurope/Moscow2013-12-14T04:15:17+04:00Europe/Moscow12bEurope/MoscowSat, 14 Dec 2013 04:15:17 +0400 2013, 04:15:17
11

Существует фактически другой способ.

Вы можете запустить TFTP-копию, используя SNMP. Это не ужасно прямо, но невероятно полезно.

Во-первых, вам понадобится TFTP-сервер (неудивительно). Вам также потребуется что-то, что может отправлять запросы snmp. Я сделал это эффективно с инструментами snmp Linux.

Вы хотите настроить новое сообщество для SNMP с ограниченным доступом к записи и, возможно, еще больше заблокировать его с помощью ACL ACL. На самом деле вам нужно только написать OCD-код .

На стороне Linux вам понадобятся следующие MIB (для удобства чтения, а не для функций)

  CISCO-CONFIG-COPY-MIB
CISCO-SMI
CISCO-СТ-ТС
 

Если MIB, установленные в соответствующем месте для вашей конфигурации SNMP в Linux, вы должны проверить соединение с snmptable следующим образом:

  snmptable -v2c -c writeCommunity 192.168.1.1 ccCopyTable
CISCO-CONFIG-COPY-MIB :: ccCopyTable: нет записей
 

Обычно вам необходимо предварительно создать файл на TFTP-сервере для копирования роутера.

Чтобы запустить TFTP-копию, вам нужно вставить строку в ccCopyTable .

snmpset позволяет вам сделать это.

  # snmpset -v2c -c writeCommunity 192.168.1.1 \
& GT; ccCopyProtocol.23 i tftp \
& GT; ccCopySourceFileType.23 i runningConfig \
& GT; ccCopyDestFileType.23 i networkFile \
& GT; ccCopyServerAddress.23 a 192.168.1.100 \
& GT; ccCopyFileName.23 s router.conf

CISCO-CONFIG-COPY-MIB :: ccCopyProtocol.23 = INTEGER: tftp (1)
CISCO-CONFIG-COPY-MIB :: ccCopySourceFileType.23 = INTEGER: runningConfig (4)
CISCO-CONFIG-COPY-MIB :: ccCopyDestFileType.23 = INTEGER: networkFile (1)
CISCO-CONFIG-COPY-MIB :: ccCopyServerAddress.23 = IpAddress: 192.168.1.100
CISCO-CONFIG-COPY-MIB :: ccCopyFileName.23 = STRING: router.conf
 

Как только вы это сделаете, вы сможете повторно запустить первую команду и увидеть команду копирования в ccCopyTable.

  snmptable -v 2c -c writeCommunity 192.168.1.1 ccCopyTable

SNMP-таблица: CISCO-CONFIG-COPY-MIB :: ccCopyTable

 index Protocol SourceFileType DestFileType ServerAddress Имя_файла UserName
    23 tftp runningConfig networkFile 192.168.1.100 router.conf?

SNMP-таблица CISCO-CONFIG-COPY-MIB :: ccCopyTable, часть 2

 index UserPassword NotificationOnCompletion State TimeStarted TimeCompleted
    23? ложный     ? ? ?

SNMP-таблица CISCO-CONFIG-COPY-MIB :: ccCopyTable, часть 3

 index FailCause EntryRowStatus ServerAddressType ServerAddressRev1
    23? ? ipv4 "192.168.1.100"
 

Ничего не произойдет, пока вы не установите другой столбец ccCopyTable для активации строки.

  snmpset -v2c -c writeCommunity 192.168.1.1 \
& GT; ccCopyEntryRowStatus.23 i активен
 

Если вы снова проверите ccCopyTable, вы увидите, что State и TimeStarted были обновлены, чтобы отразить, что файл был скопирован.

В исходных ссылках ниже содержится более подробная информация, в том числе о том, как очистить ccCopyTable (если хотите).

Я использовал тот же метод в скрипте с сервера Linux для запуска TFTP-копии, а затем передал файл git и вернул его в репозиторий, все в одном быстром процессе.

Источники: http://www.ciscozine.com/2013/08/22 /как к копи-конфигураций, использующих-SNMP /

и http://bodgitandscarper.co.uk/networks/using-snmp-to -trigger-сиг-TFTP-резервное копирование /

ответил Tom O'Connor 14 SatEurope/Moscow2013-12-14T19:36:48+04:00Europe/Moscow12bEurope/MoscowSat, 14 Dec 2013 19:36:48 +0400 2013, 19:36:48
2

Вы можете использовать EEM

Пример:

  менеджер событий applet dumpconfig
 таймер события {абсолютное время-значение времени | время обратного отсчета времени-значение | cron cron-entry cron-entry | watchdog time time value} [name timer-name]
 action 1.0 cli command "enable"
 action 2.0 cli show running-config | redirect tftp: //10.10.10.10/configs/testswitch.txt
 action 998.0 cli command "end"
 action 999.0 cli command "exit"
 
ответил pyatka 16 MonEurope/Moscow2013-12-16T14:35:59+04:00Europe/Moscow12bEurope/MoscowMon, 16 Dec 2013 14:35:59 +0400 2013, 14:35:59
2

Вы можете использовать RANCID для этого.

Вы получаете несколько других приятных вещей, таких как управление версиями конфигураций, рассылок электронной почты и других приятных вещей (по умолчанию он требует инвентаризации оборудования, поэтому, если аппаратные изменения вы получаете с этим предупреждением).

Он работает с каждым коммутатором и маршрутизатором, который я на него набросал (Cisco /Juniper /Dell), что является еще одним плюсом.

ответил shthead 18 WedEurope/Moscow2013-12-18T04:09:42+04:00Europe/Moscow12bEurope/MoscowWed, 18 Dec 2013 04:09:42 +0400 2013, 04:09:42
1

Вы можете использовать Perl-скрипт, например этот . Использование: perl cisco_backup.pl "my-enable-password"

ответил cisco 9 Jpm1000000pmFri, 09 Jan 2015 12:48:41 +030015 2015, 12:48:41
0

fetchconfig - еще один инструмент для этого:

  

fetchconfig - это Perl-скрипт для получения конфигурации   несколько устройств. Он был протестирован под Linux и Windows,   и в настоящее время поддерживает множество устройств, включая Cisco   IOS, Cisco Catalyst, Cisco ASA, Cisco PIX, FortiGate   Брандмауэры, ProCurve, Ethernet-маршрутизаторы Alcatel (ака   Riverstone), коммутаторы Dell PowerConnect, Terayon 3200/3500   CMTS, коммутаторы Datacom DmSwitch, маршрутизаторы HP MSR, Mikrotik   Маршрутизаторы, маршрутизаторы Tellabs MSR, коммутатор Juniper EX JunOS, Oracle   Acme Packet, Audiocodes Mediant, Cisco IOS XR, NEC Univerge IX.

ответил Everton 12 Jpm1000000pmTue, 12 Jan 2016 21:48:24 +030016 2016, 21:48:24

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132