Dormestmass: Админ — это состояние души

Архивация конфигурации средствами Cisco IOS

Думаю, что никто не будет спорить о том, что необходимо вести архив конфигураций сетевого оборудования. Хотя бы для того, чтобы отследить изменения при поиске причин какого-нибудь бага.

Делать можно это различными способами: самописными скриптами, специализированным ПО etc. Я, к примеру, делаю копии конфигов при помощи Kiwi CatTools. Но не о том речь сейчас.

Начиная с версии 12.3 в IOS появилась замечательная команда archive. Основная функция этой команды — настройка создания копий текущей конфигурации. Другая полезная особенность — при помощи этой команды можно журналировать все выполненные на роутере команды, а также пользователя, который их выполнял.

Для сохранения конфигов, как минимум, нужно указать, куда их складировать. А это может быть, как флеш-карта устройства, так и внешний сетевой ресурс (поддерживается работа по HTTP, FTP, RCP, или TFTP). Также необходимо сделать начальную копию конфига. В нижеследующих примерах конфигурация будет сохряняться в каталог incoming FTP-сервера.

zp-rout-c2811#copy run ftp://ftp.domain.com/incoming/zp-rout-c2811-confg
Address or name of remote host [ftp.domain.coml]?
Destination filename [incoming/zp-rout-c2811-confg]?
Writing incoming/zp-rout-c2811-confg !
21470 bytes copied in 5.148 secs (4171 bytes/sec)

zp-rout-c2811(config)#archive
zp-rout-c2811(config-archive)#?
Archive configuration commands:
  default       Set a command to its defaults
  exit          Exit from archive configuration mode
  log           Logging commands
  maximum       maximum number of backup copies
  no            Negate a command or set its defaults
  path          path for backups
  rollback      Rollback parameters
  time-period   Period of time in minutes to automatically archive the
                running-config
  write-memory  Enable automatic backup generation during write memory

zp-rout-c2811(config-archive)#path ?
  flash:  Write archive on flash: file system
  ftp:    Write archive on ftp: file system
  http:   Write archive on http: file system
  https:  Write archive on https: file system
  pram:   Write archive on pram: file system
  rcp:    Write archive on rcp: file system
  scp:    Write archive on scp: file system
  tftp:   Write archive on tftp: file system
zp-rout-c2811(config-archive)#path ftp://ftp.domain.com/incoming/zp-rout-c2811-confg
zp-rout-c2811(config-archive)#write-memory
zp-rout-c2811(config-archive)#

В приведенном примере, кроме указания пути, было включено автоматическое сохранение конфигурации при записи её в NVRAM (опция write-memory). Ручное же сохранение конфига можно сделать при помощи команды archive config:

zp-rout-c2811#archive config
Writing incoming/zp-rout-c2811-confg-1 !

Как видите, к имени файла конфигурации добавляется его версия.

Теперь конфигурируем устройство, записываем конфиг и смотрим как он бекапиться.

zp-rout-c2811#wr
Building configuration...
Compressed configuration from 16468 bytes to 7725 bytes[OK]
Writing incoming/zp-rout-c2811-confg-2 !

Посмотреть состояние архивов можно при помощи show archive:

zp-rout-c2811#sh archive
The next archive file will be named ftp://ftp.domain.com/incoming/zp-rout-c2811-confg-3
 Archive #  Name
   0
   1       ftp://ftp.domain.com/incoming/zp-rout-c2811-confg-1
   2       ftp://ftp.domain.com/incoming/zp-rout-c2811-confg-2 <- Most Recent
   3
   4
   5
   6
   7
   8
   9
   10
   11
   12
   13
   14

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

zp-rout-c2811#show archive config ?
  differences        Display the differences between two config files
  incremental-diffs  Display lines in config file which will be added to
                     running-config

! Смотрим дифф
zp-rout-c2811#show archive config differences  ftp://ftp.domain.com/incoming/zp-rout-c2811-confg-1 ftp://ftp.domain.com/incoming/zp-rout-c2811-confg-2
Loading incoming/zp-rout-c2811-confg-1 !
[OK - 21540/4096 bytes]

Loading incoming/zp-rout-c2811-confg-2 !
[OK - 21498/4096 bytes]

Contextual Config Diffs:
router ospf 25
 +passive-interface FastEthernet0/1.593
 +network 10.100.0.0 0.0.255.255 area 11
router ospf 25310
 -network 10.100.30.0 0.0.0.255 area 11
 -network 10.100.222.0 0.0.0.255 area 11
 -network 10.100.253.0 0.0.0.255 area 11
! Смотрим, чего ж поменялось после указанной версии конфигурации
zp-rout-c2811#show archive config incremental-diffs ftp://ftp.domain.com/incoming/zp-rout-c2811-confg-1
Loading incoming/zp-rout-c2811-confg-1 !
[OK - 21540/4096 bytes]
!List of Commands:
router ospf 25
 network 10.100.30.0 0.0.0.255 area 11
 network 10.100.222.0 0.0.0.255 area 11
 network 10.100.253.0 0.0.0.255 area 11
end

Дополнительно можно включить создание резервных копий через определенные промежутки времени (опция time-period).

Выводы

По моему скромному мнению, archive настолько полезна, что должна применяться на каждом устройстве, особенно если админов несколько. Для этого необязательно делать копии конфигурации на сетевые ресурсы — во многих случаях достаточно будет включить сохранение на флешку. И вы всегда сможете отследить кто чего накуролесил.

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

Популярность: 13%

P.S.

Вы можете следить за обсуждением с помощью RSS 2.0 ленты.