Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
$t->print("password");
$t->waitfor('/Router#:.*$/')
or die "No router privilege mode: ", $t->lastline;
$t->print("copy running-config tftp");
$t->waitfor('/Address or name of remote host:.*$/');
or die "Wrong copy format $t->lastline;
$t->print("10.0.1.2");
$t->waitfor('/Destination filename:.*$/');
($sec, $min, $hour, $day, $mon, $year)=gmtime(time);
$filename=”config”.$hour.$min.$sec.$day.$mon.$year;
$t->print($filename);
$result=$t->getline;
$t->waitfor('/Router#:.*$/');
$t->print("logout");
%mail = ( To => 'admin@test.local',
From => 'ciscobackup@test.local',
Message => "Backup was finished with result:".$result,
SMTP => 'smtp.mail.ru'
);
sendmail(%mail) or die $Mail::Sendmail::error;
Пользователям, не слишком искушенным в программировании на Perl, следует обратить внимание на ряд технических моментов. Прежде всего для запуска сценария необходимы права на выполнение для данного пользователя. Также сценарий можно запускать с помощью команды «perl имя_сценария», однако в случае, если первой строкой в тексте идет путь к интерпретатору Perl (например #!/usr/bin/perl, как в Листинге 1), то тогда можно запускать как обычный файл сценария, то есть ./имя_сценария (аналогично chmod +x), но второй вариант также удобен при использовании веб-интерфейса. Узнать путь к интерпретатору Perl можно с помощью команды «which perl».
Наш сценарий соединяется с удаленным устройством по протоколу Telnet, затем выполняет заданный набор команд, сохраняет рабочую конфигурацию в файле с именем, содержащим полную дату создания файла, и потом отправляет администратору письмо с результатами выполнения сценария. Для отправки почты данным сценарием достаточно, чтобы был указан SMTP-сервер на котором для данного IP-адреса разрешена ретрансляция почты. В качестве показателя результата выступает строка, которую возвращает удаленное устройство после попытки сохранить конфигурацию на TFTP-сервер.
В случае ошибки результирующая строка может выглядеть вот так: