Автоматическое создание резервных настроек MikroTik и отправка на email

Чтобы не забывать делать резервные копии конфигурации MikroTik, вы можете автоматизировать этот процесс и отправлять бэкапы себе на email.

 

Создание скрипта

Откройте меню System – Scripts и нажмите “красный плюсик”, чтобы добавить новый скрипт. В поле Name укажите название скрипта, в поле Source вставьте скрипт и нажмите кнопку OK.

Не забудьте в скрипте изменить значения your_account@gmail.com и your_gmail_password на свои.

Скрипт создания резервной копии настроек MikroTik и отправки на email

Чтобы протестировать работу скрипта, нажмите кнопку Run Script, и на ваш почтовый ящик будут высланы резервные копии. Процесс выполнения скрипта можно отслеживать в меню Log.

 

Скрипт для отправки резервной копии настроек MikroTik на email:

Для RouterOS v6.x

{
:log info “Starting Backup Script…”;
:local sysname [/system identity get name];
:local sysver [/system package get system version];
: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-backup-“]]!=”nil”) do={/file remove $i}};
:delay 2;
:local smtpserv [:resolve “smtp.gmail.com“];
:local Eaccount “your_account@gmail.com“;
:local pass “your_gmail_password“;
:local backupfile (“$sysname-backup-” . \
[:pick [/system clock get date] 7 11] . [:pick [/system \
clock get date] 0 3] . [:pick [/system clock get date] 4 6] . “.backup”);
:log info “Creating new Full Backup file…”;
/system backup save name=$backupfile;
:delay 2;
: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 start-tls=yes 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 5;
:local exportfile (“$sysname-backup-” . \
[:pick [/system clock get date] 7 11] . [:pick [/system \
clock get date] 0 3] . [:pick [/system clock get date] 4 6] . “.rsc”);
:log info “Creating new Setup Script file…”;
/export verbose file=$exportfile;
:delay 2;
: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 start-tls=yes 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.”;
}

 

В примере указан скрипт для сервиса Gmail. При отправке через Gmail нужно предварительно разрешить ненадежным приложениям доступ к аккаунту. Для этого залогиньтесь, на странице “Мой аккаунт” перейдите в раздел “Ненадежные приложения” и выберите “Включить”. Подробнее читайте Как разрешить ненадежным приложениям доступ к аккаунту.

Разрешить доступ ненадежных приложения к Gmail

 

Чтобы использовать сервис Рамблер Почта, замените в скрипте smtp.gmail.com на mail.rambler.ru. Чтобы использовать сервис Яндекс Почта, замените в скрипте smtp.gmail.com на smtp.yandex.ru. Также не забудьте изменить значения your_account@gmail.com и your_gmail_password на свои.

 

Настройка планировщика

Теперь нужно настроить с какой периодичностью будут создаваться резервные копии, и отправляться на email. Для этого настроим планировщик (Sheduler).

Откройте меню System – Sheduler и нажмите кнопку “плюсик”, чтобы добавить новую задачу.

MikroTik: Добавить задание в планировщик

В открывшемся окне настраиваем параметры задачи:

  • в поле Name указываем имя задачи, например send_backup_to_email;
  • в поле Interval указываем с какой периодичностью будет выполняться скрипт. Мы указали интервал 24 часа. Для отладки работы планировщика укажите интервал 5 минут и текущее время Start Time. И не забудьте настроить время на MikroTik в меню System – Clock;
  • в поле On Event указываем, какую команду необходимо выполнить при запуске задачи. Мы указали команду /system script run backup_to_email, которая запускает скрипт backup_to_email;
  • нажимаем кнопку OK для сохранения задачи.

MikroTik: Настройка параметров задачи планировщика

 

Теперь каждый день в 00:00:00 будет создаваться резервная конфигурация MikroTik и отправляться вам на email.