В версии 7, операционной системы RouterOS, под управлением которой работают практически все устройства MikroTik внесено достаточно большое количество изменений. В связи с этим предыдущие версии скриптов, для отправки резервных копий конфигурации и настроек на электронную почту, работать не будут.
Что же делать в таком случае?! Использовать новый, рабочий, проверенный скрипт!
Но прежде, чем мы перейдем к самому скрипту, - необходимо произвести ряд действий.
- Зайдите в свою учетную запись электронной почты (Gmail/Yandex etc.)
- Перейдите в настройки безопасности
- Включите двухфакторную аутентификацию
- После этого появится возможность создания пароля для приложений
- Создайте пароль для приложения (назовите его, например, Mikrotik)
- Скопируйте данный пароль в текстовый редактор, он нам пригодится
Теперь перейдем непосредственно к самому скрипту. Ниже текст скрипта, для отправки бэкапов на 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
Напишите комментарий