Централизованный собор конфигураций с сетевых устройств

Централизованно собирать конфигурации с сетевых устройств

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

Рассмотрим следующий пример централизованного сбора конфигураций с сетевого оборудования.

Допустим у нас есть 90 межсетевых экранов в сети, с которых нам нужно собрать конфигурацию, адресация данный межсетевых экранов следующая 192.10.0.1, 192.11.0.1 и так до 192.100.0.1.

Решение данной задачи очень просто:

  1. Для этого на понадобится tftp сервер, пакетный клиент telnet и небольшие знания VBS скриптов;
  2. Устанавливаем и настраиваем tftp сервер;
  3. Устанавливаем пакетный клиент telnet;
  4. И нажимаем писать VBS скрипт.

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

On Error Resume Next
Dim oShell, oFSO, oLogFile, oResFile, sLogName, sResFile
sLogName = «log.txt»
sResFile = «res_ip.csv»
i = 0
Set oShell = CreateObject(«wscript.shell»)
Set oFSO = CreateObject(«Scripting.Filesystemobject»)
Set oLogFile = oFSO.OpenTextFile(sLogName,8,True)
oLogFile.WriteLine «————————————————————————»
oLogFile.WriteLine Now & » Запуск скрипта»
dStartTime = Now()
Set oResFile = oFSO.OpenTextFile(sResFile,2,True)

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

Для удобства скопируйте исполняемый файл ctel.exe в папку вместе с скриптом.

For i = 10 To 100
sIP=»192.» & i & «.0.1»
WScript.Echo sIP
text = «CTel.exe /host:» & sIP &» /port:23 /com:admin /ent /com:pass /ent /com:en /ent /com:pass /ent /com:copy running-config tftp://192.168.0.134/» & sIP & «.conf /ent /ent /ent /ent»
WScript.Echo text
Set oRes = oShell.Exec(text)
WScript.Echo «Set oRes = oShell.Exec(text)»
While (oRes.Status = «0»)
‘Wscript.Echo res.Status
Wend
Set textStream = oRes.StdOut
Str = vbNullString
While Not textStream.AtEndOfStream
Str = Str & Trim(textStream.ReadLine()) & » | »
Wend
str1 = Replace (Str,Chr(08),»»)
oResFile.WriteLine sIP & «;»  & Str1
WScript.Echo Str
Next

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

Ну вот принципе и все переходим к окончанию составлению нашего скрипта для централизованного сбора конфигураций с сетевого оборудования.

oResFile.Close
oLogFile.WriteLine  Now & » Выполнение скрипта завершено.»
oLogFile.WriteLine  & «————————————————————————» & VbCrLf
WScript.Echo «Выполнение скрипта завершено.» & VbCrLf

В результате в папке со скриптов у Вас появится еще два файла log.txt (протокол работы скрипта) и res_ip.csv (протокол выполнения скрипта).

Исходник скрипта можно >> Скачать тут

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *