Teme: Mikrotik

Automatsko čuvanje mikrotik konfiguracije

Skraćena veza: http://pedja.supurovic.net/veza/3758

Podešavanje mikrotik rutera vremenom može da postane prilično komplikovano, pa bi šteta od gubitka svih tih podataka mogla da bude nezgodna. Zbog toga je dobro s vremena na vreme napraviti kopiju svih podešavanja i čuvati ih na sigurnom.

Mikrotik ima dve opcije za čuvanje konfiguracije. Jedna je upoteba namenske komande /system backup save, koja snimi na disk sva podešavanja mikrotika u binarnom obliku, a duga je upotrebe komande /export koja sva podešavanja prikazuje u tekstualnom obliku. U priručniku za mikrotik ćete naći objašnjenja kako se ove komande koriste tako da nema potrebe da vam ja to prepričavam.

Jednokratno snimanje podataka korišćenjem ovih komandi je u redu, ali treba se setiti i povremeno snimati podatke. Ako ste seikada oslanjali na to da ćete se setiti da ih snimite, uveren sam da ste najamnje jednom propustili da to učinite baš kada je to bilo veoma važno.

Dobra ideja je podesiti mikrotik da on sam, povremeno, snima podatke. Nažalost, on nema mogućnost da podatke snimi kad god nešto izmenite već jedino možemo da iskoristimo sistem vremenskog zakazivanja akcija (Scheduler) i preko njega u zadatim vremenskim periodima izvravamo skript koji će praviti snimanjepodešavanja.

Ujedno, skript može i da snimljene podatke pošalje na imejl i tako obezbedi da budu na sigurnom mestu, jer ništa nam ne vredi ako smo snimili podatke na Mikrotiku ako, iz nekog razloga ne možemo da im pristupimo da bismo ih upotrebili.

Evo gotovog skripta koji radi snimanje podataka

{

 :local RecipientEmail "to@domain.com"
 :local SenderEmail "from@domain.com"
 :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"

}

U skriptu samo treba, na njenom početku, podesiti imejl adrese pošiljaoca iprimaoca i adresu SMTP servera preko koga treba da se pošalje imejl. Skript će snimiti trenutnu konfiguraciju i binarno i kao niz komandi i poslati dve imejl poruke sa zakačenim datotekama. Imena datoteka će biti podešena tako da je očigledno na koji mikrotik ruter se podaci odnose (koristeći identifikaciju mikrotika – System / Identity) i kada je snimanje izvršeno (datum i vreme). Isti podaci će pisati i u naslovime imejl poruka tako da je lako pronaći željenu konfiguraciju.

Kako automatski pokretati ovaj skript

Zakačite se na mikrotik ruter korišćenjem programa Winbox i uđite u opciju System / Scripts. U dijalogu kliknite na znak + da dodate novi skript, u novom dijalogu, u polje Name upišite naziv skripta, neka to bude backup, a u polje Source iskopirajte ovaj skript.

Zatim u skript upišite imejl adrese primaoca (RecipientEmail) i pošiljaoca (SenderEmail) i podesite adresu SMTP servera (SMTPServer) i sačuvajte ga (kliknite na OK).

Da bi skript bio automatski pokretan u nekim periodima potrebno je zakazati njegovo izvršavanje u opciji System / Scheduler.

Otvorite ovu opciju i kliknite na + da zakažete novu akciju. U dijalogu koji se otvori podesite:

Name: backup

Start Time: 08:00:00

Inteval: 1d 00:00:00

On Event: backup

Ovim ste podesili novu zakazanu akciju koja je nazvana backup, koja započinje u 8 časova ujutru i izvršava se u intervalima od jednog dana (24 časa). Svaki put kada se izvrši ova akcija, ona će pkrenuti skript koji se zove backup (pod tim imenom smo snimili naš skript za snimanje podataka).

Kliknite na OK i time su sva podešavanja završena – podaci će automatski bitisnimani u 8 časova ujutru svakog dana i slati na imejl adresu koju ste podesili.


Podelite ovaj članak sa prijateljima


11 comments to Automatsko čuvanje mikrotik konfiguracije

  • 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!

  • Pogledaj /tool e-mail set.

    Tu se podešavaju generalni parametri za slanje imejla.

    Gugl je posebno komplikovan jer pored drugačijeg porta koristi i enkripciju. Preporučuje da se imejl šalje komandom:

    /tool e-mail send to=user@domain.com subject=“naslov“ body=“tekst poruke“ tls=yes

    Ovo radi tek na novijim verzijama Mikrotika.

  • easy

    Hvala na odgovoru..nego kako da znam koja je IP adresa npr google-ovog smpt servera?

  • Na primer sa ping mail.google.com ili ping smtp.google.com ili koja je već adresa servera.

    Vodi računa, Gugl koristi više IP adresa za jednu mnemoničku, zbog rasterećenja, pa ako se desi da promene IP adresu, moraš to ažurirati.

  • easy

    Da pokusavam ali ne uspevam cak ni sa primerima sa sajta:
    http://forum.mikrotik.com/viewtopic.php?f=13&t=43548

  • Ne mogu ti mnogo pomoći, nisam se bavio slanjem imejla preko Gugla. Video sam da ljudi imaju problema sa tim, a i inače je cela ta opcija slanja imejla traljavo napravljena.

  • easy

    OKs..Hvala na supportu..snacu se vec nekako i napravicu pa cu te obavestiti!

  • Pa to sam ti i rekao da podesiš koju poruku iznad. 🙂

  • 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=“xxx@gmail.com“ subject=([/system identity get name] . \
    “ Backup“) from=xxx@gmail.com file=$backupfile server=[:resolve smtp.gmail.com]
    :log info „backup finished“

  • Aladin

    Znaci vrh!
    Postavio u firmi i radi sve super…

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Popunite izraz tako da bude tačan: *