Отправка резервной копии конфигурации и настроек на электронную почту в Mikrotik RouterOS версии 7

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

Что же делать в таком случае?! Использовать новый, рабочий, проверенный скрипт!

Но прежде, чем мы перейдем к самому скрипту, - необходимо произвести ряд действий.

  1. Зайдите в свою учетную запись электронной почты (Gmail/Yandex etc.)
  2. Перейдите в настройки безопасности
  3. Включите двухфакторную аутентификацию
  4. После этого появится возможность создания пароля для приложений
  5. Создайте пароль для приложения (назовите его, например, Mikrotik)
  6. Скопируйте данный пароль в текстовый редактор, он нам пригодится

Теперь перейдем непосредственно к самому скрипту. Ниже текст скрипта, для отправки бэкапов на e-mail.

(О том, как добавить скрипт - подробно рассказано в предыдущей статье )

 

{
:log info "Starting Backup Script...";
:local sysname [/system identity get name];
:local sysver [/system package get routeros version];

:local smtpserv [:resolve "smtp.gmail.com"];
:local Eaccount "YOURACCOUNT@YOURDOMAIN.com";
:local pass "YOURPASSWORD";

:log info "Flushing DNS cache...";
/ip dns cache flush;
:delay 2;

:log info "Deleting last Backups...";
:foreach i in=[/file find] do={:if ([:typeof [:find [/file get $i name] "$sysname-"]]!="nil") do={/file remove $i}};
:delay 2;

:log info "Creating new Full Backup file...";

:local backupfile ("$sysname-" . [:pick [/system clock get date] 7 11] . [:pick [/system clock get date] 0 3] . [:pick [/system clock get date] 4 6] . ".backup");

/system backup save dont-encrypt=yes name=$backupfile;
:delay 5;
:log info "Sending Full Backup file via E-mail...";

/tool e-mail send from="<$Eaccount>" to=$Eaccount server=$smtpserv port=587 user=$Eaccount password=$pass tls=starttls \
file=$backupfile subject=("$sysname Full Backup (" . [/system clock get date] . ")") \
body=("$sysname full Backup file see in attachment.\nRouterOS version: $sysver\nTime and Date stamp: " . [/system clock get time] . " " . [/system clock get date]);
:delay 10;

:log info "Creating new Setup Script file...";

:local exportfile ("$sysname-" . [:pick [/system clock get date] 7 11] . [:pick [/system clock get date] 0 3] . [:pick [/system clock get date] 4 6] . ".rsc");
/export verbose file=$exportfile;
:delay 5;

:log info "Sending Setup Script file via E-mail...";

/tool e-mail send from="<$Eaccount>" to=$Eaccount server=$smtpserv port=587 user=$Eaccount password=$pass tls=starttls file=$exportfile \
subject=("$sysname Setup Script Backup (" . [/system clock get date] . ")") \
body=("$sysname Setup Script file see in attachment.\nRouterOS version: $sysver\nTime and Date stamp: " . [/system clock get time] . " " . [/system clock get date]);
:delay 5;

:log info "All System Backups emailed successfully.\nBackuping completed.";
}

 

Где:

YOURACCOUNT@YOURDOMAIN.com - ваш адрес электронной почты
YOURPASSWORD - ваш пароль доступа к e-mail для приложений

Осталось только добавить данный скрипт в расписание планировщика RouterOS

Напишите комментарий

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