Автонастройка Cisco

  • 15 авг. 2011 г.
  • 1677 Слова
Автоматическое сохранение конфигурации маршрутизаторов cisco

Оригинал: http://www.citrin.ru/my/cisco-conf.html

Автоматическое сохранение конфигурации маршрутизаторов cisco

В данной заметке рассказывается о том, как настроить автоматическое
сохранение конфигурации сетевого оборудования, работающего под
управлением Cisco IOS и отслеживание изменений с помощью RCS.Пару слов, зачем это нужно. Конфигурация маршрутизатора относится к
числу критически важных данных, поэтому обязательно должно
осуществятся её регулярное резервное копирование. Тогда при выходе из
строя марщрутизатора можно будет быстро восстановить работу, заменив
его и скопировав сохраненный конфиг. Причем сохранять нужно не только
последнюю версию, нои несколько предыдущих - если из-за ошибки при
настройке возникнут проблемы, это позволит легко вернутся к предыдущей
версии. Изменения в конфигурации высылаются администратору по почте.
Это особенно удобно, когда одним маршрутизатором управляет несколько
человек, поскольку позволяет быть в курсе изменений, сделанных
другими.

Для решения этой задачисуществует как минимум три программы (помимо
скриптов, написанных мной) - ciscoconf (порт FreeBSD
/usr/ports/net-mgmt/ciscoconf) и rancid. Первая (ciscoconf)
копирует конфигурации конфигурацию по RSH и сохраняет в RCS. Её
преимущество - она это может делать сразу после завершения
конфигурации отслеживая появление в логе строчки содержащей%SYS-5-CONFIG_I. Вторая (rancid) более универсальная и позволяет
работать не только с оборудованием Cisco. Для своей работы она требует
сохранения в конфиге пароля на доступ по telnet и пароль enable. Я
считаю, что это делать нежелательно из соображений безопасности. Уже
после написания этого скрипта я наткнулся еще на один проект -
Pancho. Там так жеконфиги копируются используюя snmp+tftp.

Если вам не хочется читать все, что написано ниже то рекомендую
поставить ciscoconf - её настроить проще, чем то, что описано далее.

Тем не менее я решил сделать подобную систему самому, поскольку мне не
хотелось только ради ciscoconf открывать на маршрутизаторах rsh.
Сохранять в открытом виде пароли для доступа к Цискея тем более не
стал. Кроме просмотра конфигурации через telnet или по rsh есть еще
один способ - дать по snmp команду скопировать конфигурацию на
tftp-сервер. Им я и воспользовался. Еще одна причина написания этих
скриптов - я думал, что при копировании конфига с помощью snmp+tftp
процессор маршрутизатора нагружается меньше, чем при использовании
RSH,но проведенные тесты показали, что в обоих случаях нагрузка на
процессор примерно одинаковая (загрузка процессора на 3550 при
копировании конфига 9,3K 30 раз в минуту в среднем 28%). В двух словах
как работает предлагаемся схема: циске по snmp дается команда
скопировать конфиг по tftp. Далее этот файл помещается в RCS-архив, а
diff высылаетсяадминистратору. Скрипт написан на perl, с
использованием модуля Cisco-CopyConfig и запускается из крона.

Настройка tftp-сервера

Здесь и далее рассматривается настройка на примере FreeBSD. Если у вас
еще не настроен tftp-сервер то сейчас самое время это сделать. Сначала
добавим в систему пользователя netmgr под которым будет работать наша
система (запускать под рутом софт, для работыкоторого не нужны права
рута плохая идея). Добавьте в /etc/inetd.conf строчку

tftp dgram udp wait root /usr/libexec/tftpd tftpd -s /var/tftproot -u netmgr -l

(на всякий случай напомню, что после изменения этого файла нужно
перезапустить inetd, а если до этого он не был запущен, то добавить в
/etc/rc.conf строчку inetd_enable="YES" и...