Автоматическое создание резервных настроек 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.