Изборник Затворити

Аутоматско чување микротик конфигурације

Скраћена веза: https://pedja.supurovic.net/veza/3758

Подешавање микротик рутера временом може да постане прилично компликовано, па би штета од губитка свих тих података могла да буде незгодна. Због тога је добро с времена на време направити копију свих подешавања и чувати их на сигурном.

Микротик има две опције за чување конфигурације. Једна је употеба наменске команде /system backup save, која сними на диск сва подешавања микротика у бинарном облику, а дуга је употребе команде /export која сва подешавања приказује у текстуалном облику. У приручнику за микротик ћете наћи објашњења како се ове команде користе тако да нема потребе да вам ја то препричавам.

Једнократно снимање података коришћењем ових команди је у реду, али треба се сетити и повремено снимати податке. Ако сте сеикада ослањали на то да ћете се сетити да их снимите, уверен сам да сте најамње једном пропустили да то учините баш када је то било веома важно.

Добра идеја је подесити микротик да он сам, повремено, снима податке. Нажалост, он нема могућност да податке сними кад год нешто измените већ једино можемо да искористимо систем временског заказивања акција (Scheduler) и преко њега у задатим временским периодима извравамо скрипт који ће правити снимањеподешавања.

Уједно, скрипт може и да снимљене податке пошаље на имејл и тако обезбеди да буду на сигурном месту, јер ништа нам не вреди ако смо снимили податке на Микротику ако, из неког разлога не можемо да им приступимо да бисмо их употребили.

Ево готовог скрипта који ради снимање података

{

 :local RecipientEmail "[email protected]"
 :local SenderEmail "[email protected]"
 :local SMTPServer smtp_server_address

 :log info "Backup procedure started"

 :local Date ([:pick [/system clock get date] 7 11] . "-" \
     . [:pick [/system clock get date] 0 3] . "-" \
     . [:pick [/system clock get date] 4 6])

 :local backupfile ("MikroTik-" \
     . [/system identity get name] . "-" \
     . $Date . "-" \
     . [/system clock get time])

 :local backupfilebin  ($backupfile . "-bin")
 :local backupfilecmd  ($backupfile . "-cmd")

 :put "Creating binary backup"

 /system backup save name=$backupfilebin

 :put "Creating command backup"

 /export file=$backupfilecmd

 :delay 10s

 :log info "Sending binary backup to email"

 :put "Emailing binary backup"

 /tool e-mail \
 send to=$RecipientEmail \
 subject=("Binary backup: " . $backupfilebin) \
 from=$SenderEmail  \
 file=$backupfilebin \
 server=$SMTPServer

 :put "Emailing command backup"

 /tool e-mail \
 send to=$RecipientEmail \
 subject=("Command backup: " . $backupfilecmd) \
 from=$SenderEmail  \
 file=$backupfilecmd \
 server=$SMTPServer

 :put "Backup sent"

 :log info "Backup procedure finished"

}

У скрипту само треба, на њеном почетку, подесити имејл адресе пошиљаоца ипримаоца и адресу СМТП сервера преко кога треба да се пошаље имејл. Скрипт ће снимити тренутну конфигурацију и бинарно и као низ команди и послати две имејл поруке са закаченим датотекама. Имена датотека ће бити подешена тако да је очигледно на који микротик рутер се подаци односе (користећи идентификацију микротика – System / Identity) и када је снимање извршено (датум и време). Исти подаци ће писати и у насловиме имејл порука тако да је лако пронаћи жељену конфигурацију.

Како аутоматски покретати овај скрипт

Закачите се на микротик рутер коришћењем програма Winbox и уђите у опцију System / Scripts. У дијалогу кликните на знак + да додате нови скрипт, у новом дијалогу, у поље Name упишите назив скрипта, нека то буде backup, а у поље Source ископирајте овај скрипт.

Затим у скрипт упишите имејл адресе примаоца (RecipientEmail) и пошиљаоца (SenderEmail) и подесите адресу СМТП сервера (SMTPServer) и сачувајте га (кликните на OK).

Да би скрипт био аутоматски покретан у неким периодима потребно је заказати његово извршавање у опцији System / Scheduler.

Отворите ову опцију и кликните на + да закажете нову акцију. У дијалогу који се отвори подесите:

Name: backup

Start Time: 08:00:00

Inteval: 1d 00:00:00

On Event: backup

Овим сте подесили нову заказану акцију која је названа backup, која започиње у 8 часова ујутру и извршава се у интервалима од једног дана (24 часа). Сваки пут када се изврши ова акција, она ће пкренути скрипт који се зове backup (под тим именом смо снимили наш скрипт за снимање података).

Кликните на ОК и тиме су сва подешавања завршена – подаци ће аутоматски битиснимани у 8 часова ујутру сваког дана и слати на имејл адресу коју сте подесили.

11 Comments

  1. easy

    Hvala na srkipti.
    Ona zaista stvori binarni fajl..ali nije mi jasno kako moze da salje na mail ako nigde u skripti ne upisem password od mail-a kao ni port smtp servera na koji se konektujem ??
    Naravno meni preko gmaila na gmail ne salje!

  2. Peđa

    Погледај /tool e-mail set.

    Ту се подешавају генерални параметри за слање имејла.

    Гугл је посебно компликован јер поред другачијег порта користи и енкрипцију. Препоручује да се имејл шаље командом:

    /tool e-mail send [email protected] subject=“naslov“ body=“tekst poruke“ tls=yes

    Ово ради тек на новијим верзијама Микротика.

  3. Peđa

    На пример са ping mail.google.com или ping smtp.google.com или која је већ адреса сервера.

    Води рачуна, Гугл користи више ИП адреса за једну мнемоничку, због растерећења, па ако се деси да промене ИП адресу, мораш то ажурирати.

  4. Peđa

    Не могу ти много помоћи, нисам се бавио слањем имејла преко Гугла. Видео сам да људи имају проблема са тим, а и иначе је цела та опција слања имејла траљаво направљена.

  5. mves

    Pozdrav. Pokusavam da pokrenem slanje na mail ali bez uspeha. Koristim malo izmenjenu skriptu ali sa istim rezultatom. Email je naravno google. Nezgoda je sto to isto radi na 3.30 ali nece na 4.17. Probao sam i sa tls=yes ali isto nista a i po defaultu bi trebalo da je tls ukljucen. Na 587 portu dobijam poruku error handling file, na 468 smtp server not ready a na 25 timeout. Zna li neko kako da se ovo prevazidje? Da li je mozda problem do googla ili do ROS i tls?
    Hvala

    :log info „backup beginning now“
    :local Date ([:pick [/system clock get date] 7 11] . „-“ \
    . [:pick [/system clock get date] 0 3] . „-“ \
    . [:pick [/system clock get date] 4 6])
    :global backupfile ([/system identity get name] . „-“ . $Date )
    /system backup save name=$backupfile
    :log info „backup pausing for 15s“
    :delay 15s
    :log info „backup being emailed“
    /tool e-mail send to=“[email protected]“ subject=([/system identity get name] . \
    “ Backup“) [email protected] file=$backupfile server=[:resolve smtp.gmail.com]
    :log info „backup finished“

Оставите одговор на easy Одустани од одговора

Ваша адреса е-поште неће бити објављена. Неопходна поља су означена *

Попуните израз тако да буде тачан: *

Ово веб место користи Акисмет како би смањило непожељне. Сазнајте како се ваши коментари обрађују.