Backup konfiguracji urządzenia CISCO w PHP z wykorzystaniem protokołu SNMP.

Poniżę, przedstawiam gotową funkcję PHP, której zadaniem jest wymuszenie na urządzeniu CISCO wysłanie konfiguracji na wskazany serwer FTP.

Funkcja została sprawdzona osobiście na urządzeniach:
– router  2811, 2821, 2851
– przełączniki 6500, 3750, 3750G, 450x

Oczywiście, jak wszystkie porady, mimo najlepszych chęci proszę samemu sprawdzić.

Należy pamiętać, o dodaniu rozszerzenia snmp do serwera PHP, bez którego nie będzie działać poniższa funkcja.

—————————————————————————————————————————————————

/**
* funkcja powodująca wsylanie startup configu na serwer ftp
*
*$communityString – to community snmp z prawami do zapisu
**/

function backupKonfig($ipPrzelacznika, $communityString, $nazwaPliku, $ipSerweraFTP, $userFTP, $passFTP)
{
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.2.111”, „i”, „2”);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.3.111”, „i”, „4”);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.4.111”, „i”, „1”);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.7.111”, „s”, $userFTP);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.8.111”, „s”, $passFTP);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.5.111”, „a”, $ipSerweraFTP);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.6.111”, „s”, $nazwaPliku);
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.14.111”, „i”, „1”);
while (snmpget($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.10.111”) == „INTEGER: 2”)
{
}
switch (snmpget($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.10.111”)) {
case „INTEGER: 3”:
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.14.111”, „i”, „6”);
return true;
break;
case „INTEGER: 4”:
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.14.111”, „i”, „6”);
return false;
break;
default:
snmpset($ipPrzelacznika, $communityString, „.1.3.6.1.4.1.9.9.96.1.1.1.1.14.111”, „i”, „6”);
return false;
break;
}
}

Dodaj komentarz

Twój adres email nie zostanie opublikowany.