Mikrotik Backup konfiguracji
Mikrotik Backup konfiguracji
Regularny backup konfiguracji jest kluczowym elementem, który wpływa na poprawę bezpieczeństwa i stabilności nie tylko urządzeń sieciowych, ale również innych systemów. Każdy administrator powinien zobowiązać się do regularnego wykonywania kopii zapasowych, a także systematycznego testowania ich odtwarzania. To jest niezwykle istotne, szczególnie w kontekście urządzeń sieciowych. W przypadku awarii, błędu konfiguracji czy ataku cybernetycznego, szybkie i skuteczne przywrócenie poprawnej konfiguracji może być kluczowe dla utrzymania ciągłości działania sieci i ochrony danych. Dlatego też, regularne tworzenie i testowanie kopii zapasowych powinno być integralną częścią strategii zarządzania siecią każdego administratora.
Mikrotik, a bardziej RouterOS oferuje kilka opcji, które pozwalają efektywnie wykonać kopie zapasową konfiguracji. Dwie z nich tworzą nowy plik w Files. Dostępne są:
- Backup – wykonuje kopie wszystkich ustawień routera, którą później można odtworzyć na tym samym urządzeniu. System zapisuje mac addressy kart sieciowych, wszystkie hasła oraz statystyki i logi. Kopia nie uwzględnia certyfikatów zapisanych na urządzeniu. Certyfikaty należy wyeksportować osobno. Tworzy nowy plik z rozszerzeniem .backup
- Export – zapisuje konfiguracje w postaci czystego tekstu. Najczęściej wykorzystywana jeżeli chcemy przenieść konfigurację np. firewalla na inny router. Wyeksportować możemy indywidualne ustawienia, które znajdują się w bocznym menu. Tworzy nowy plik z rozszerzeniem .rsc
- Cloud Backup – od wersji RouterOS 6.44 można kopie konfiguracji przechowywać w chmurze Mikrotika.
Backup
Kopie binarną wykonujemy z poziomu Files w Winboxie. Z bocznego menu wybieramy Files, a następnie klikamy w przycisk backup.
- Name: podajemy nazwę pliku. Rozszerzenie .backup zostanie dopisane autmatycznie. W przypadku braku podania nazwy, RouterOS podstawi domyślną nazwę(nazwa_urządzenia-data-godzina.backup),
- Password: podajemy hasło, jeżeli chcemy zaszyfrować plik kopii,
- Encryption: wybieramy rodzaj szyfrowania,
- Don’t Encrypt: zaznaczona opcja wyłączy szyfrowanie kopii.
![mikrotik_files_backup Mikrotik Backup Files](https://grzegorzkowalik.com/wp-content/uploads/2023/08/mikrotik_files_backup-1.png)
Po kliknięciu w przycisk „Backup”, zostanie wygenerowany plik o nazwie VPN-Server_06082023.backup. Ten plik zawiera kopię zapasową konfiguracji urządzenia. Za pomocą funkcji drag&drop, możemy łatwo przenieść ten plik na nasz komputer, co zapewnia dodatkową warstwę bezpieczeństwa.
Jednakże, warto zauważyć, że proces ten można zautomatyzować, co jest szczególnie przydatne w większych sieciach lub gdy zarządzamy wieloma urządzeniami. W dalszej części artykułu opiszę, jak można zautomatyzować tworzenie kopii zapasowych, co pozwoli na regularne i systematyczne tworzenie kopii bez konieczności ręcznej interwencji.
Odtworzenie kopii
Odtworzenie ustawień z pliku backupu jest równie proste, co jego utworzenie. Po pierwsze plik .backup musimy wgrać na urządzenie do Files. Możemy tego dokonać poprzez przycisk „Upload” bądź za pomocą drag&drop przenieść plik w dowolne miejsce okna Files. Wybieramy aktualny backup i klikamy w Restore. W polu Password podajemy hasło ustawione przy tworzeniu backupu.
![mikrotik_files_restore Mikrotik Backup Restore](https://grzegorzkowalik.com/wp-content/uploads/2023/08/mikrotik_files_restore.png)
Export
Kolejną opcją tworzenia kopii zapasowej konfiguracji jest użycie polecenia export. Główną różnicą między binarną kopią a tekstową jest możliwość wykonania kopii zapasowej tylko wybranej gałęzi konfiguracji.
Dla lepszego zrozumienia, jak działa export, załóżmy, że chcemy zrobić kopię zapasową tylko serwera DHCP i jego ustawień. W tym celu przechodzimy do „New Terminal” w interfejsie MikroTik
Terminal Mikrotik
[admin@MT-VPN-Server] /ip/dhcp-server
enter
[admin@MT-VPN-Server] /ip/dhcp-server> export terse file=dhcp_server_config
enter
Po wykonaniu komendy, w sekcji „Files” zostanie utworzony plik o nazwie dhcp_server_config.rsc. Podobnie jak wcześniej, ten plik możemy przegrać bezpośrednio na nasz komputer, co zapewnia dodatkową warstwę bezpieczeństwa.
Ważne jest, aby pamiętać o poprawnym użyciu polecenia „export”. Gdy jesteśmy w odpowiedniej gałęzi konfiguracji, powinniśmy użyć polecenia „export”, a nie „/export”. W przypadku drugiej opcji, wyeksportowalibyśmy całą konfigurację, a nie tylko jej wybraną część.
Dlatego, jeśli chcemy wyeksportować tylko konkretną część konfiguracji, musimy najpierw przejść do odpowiedniej gałęzi konfiguracji, a następnie użyć polecenia „export”. Na przykład, jeśli chcemy wyeksportować konfigurację serwera DHCP, powinniśmy najpierw przejść do gałęzi „ip dhcp-server”, a następnie użyć polecenia „export”.
Polecenie „export” jest rzeczywiście niezwykle przydatne podczas diagnozowania problemów z konfiguracją. Jeśli szukasz pomocy na różnych forach, na pewno zostaniesz poproszony o udostępnienie eksportu konfiguracji. W takim przypadku warto użyć parametru „hide-sensitive”, który ukryje wszelkie wrażliwe dane, takie jak hasła, z wygenerowanego skryptu. Jednakże, jeśli korzystasz z RouterOS 7.x, nie musisz się o to martwić. W tej wersji systemu, wrażliwe dane są ukrywane automatycznie podczas eksportu konfiguracji.
Cloud Backup
Ostatnią, ale nie mniej ważną opcją jest utworzenie kopii zapasowej bezpośrednio w chmurze producenta. Mikrotik oferuje usługę Cloud Backup, która umożliwia automatyczne tworzenie i przechowywanie kopii zapasowych konfiguracji w chmurze.
Aby skorzystać z tej usługi, musimy najpierw aktywować usługę Mikrotik Cloud. Znajduje się ona w menu
IP -> Cloud. Ta usługa pełni również funkcję Dynamic DNS (DDNS), co jest dodatkowym atutem.
![Mikrotik_ip_clud_ddns Mikrotik Cloud DDNS](https://grzegorzkowalik.com/wp-content/uploads/2023/08/Mikrotik_ip_clud_ddns.png)
Po aktywacji usługi Mikrotik Cloud, możemy włączyć Cloud Backup. Przechodzimy na Files do sekcji Cloud Backup a następnie klikamy w Upload Backup.
- Action: jeżeli jest to nasza pierwsza kopia wybieramy create and upload
- Name: podajemy dowolną nazwę
- Replace: wskazujemy backup, który chcemy nadpisać nowszą wersja
- Password: dowolne hasło do zaszyfrowania kopii
![Mikrotik_files_cloud_backup Mikrotik Files Cloud Backup](https://grzegorzkowalik.com/wp-content/uploads/2023/08/Mikrotik_files_cloud_backup.png)
Mikrotik Backup konfiguracji – wysyłka na maila
Domyślne zapisywanie kopii zapasowych w sekcji „Files” jest wygodne, ale jak słusznie zauważyłeś, w przypadku awarii routera, możemy stracić dostęp do tych kopii, co jest nieakceptowalne. Aby zabezpieczyć się przed taką ewentualnością, warto skorzystać z opcji cyklicznego wysyłania kopii zapasowych na adres e-mail. Dzięki temu, nawet w przypadku awarii fizycznego urządzenia, będziemy mieli dostęp do kopii zapasowych. Przechodzimy do bocznego menu i wybieramy „Tools”, a następnie „Email”.
- Server: podajemy adres serwera smtp
- Port: port serwera smtp
- Start TLS: tak/nie w zależności od ustawień serwera
- From: adres email z którego bedą wysyłane powiadomienia
- User: nazwa użytkownika, z reguły adres mailowy
- Password: hasło do konta mailowego
![email_settings Mikrotik Email Settings](https://grzegorzkowalik.com/wp-content/uploads/2023/08/email_settings.png)
/tools/email/
send [email protected] subject="Mail Testowy" body="To jest Test"
W przypadku problemów z wysyłką warto przeanalizować Logi. Powinny się tam pojawić podstawowe informacje. Włączenie opcji debug, powinno zwiększyć zakres analizy.
![mikrotik_email_send_log Mikrotik Log Email](https://grzegorzkowalik.com/wp-content/uploads/2023/08/mikrotik_email_send_log.png)
Pierwsza część konfiguracji za nami. Teraz przygotujemy skrypt, który będzie odpowiedzialny za automatyczną wysyłkę kopii zapasowej. Gotowy skrypt jest dostępny na moim githubie.
Przygotowanie i wysłanie kopii zapasowej
# Logowanie rozpoczęcia procesu
:log info "Rozpoczynam tworzenie kopii zapasowej"
# Ustalanie bieżącej daty
:local currentDate [/system clock get date]
# Tworzenie kopii zapasowej z datą w nazwie
:local backupName ("backup_" . $currentDate . ".backup")
/system backup save name=$backupName
# Krótka przerwa, aby zapewnić zapisanie kopii zapasowej
:delay 10s
# Logowanie rozpoczęcia wysyłania e-maila
:log info "Rozpoczynam wysyłanie kopii zapasowej na e-mail"
# Ustalanie nazwy routera
:local routerName [/system identity get name]
# Tytuł e-maila
:local emailSubject ("Kopia dla " . $routerName . " została przygotowana - " . $currentDate)
# Wysyłanie e-maila z kopią zapasową
/tool e-mail send to="[email protected]" subject=$emailSubject file=$backupName
# Logowanie zakończenia wysyłania e-maila
:log info "Kopia zapasowa wysłana pomyślnie na e-mail"
Cykliczna wysyłka na maila
Dążymy do automatyzacji procesu przekazywania kopii zapasowej, dlatego powyższy skrypt musi dodać do harmonogramu(Scheduler). Działa na podobnej zasadzie jak CRON w Linuksie. Przechodzimy na System->Scripts i dodajemy nowy wpis. Pole name podajemy dowolnie, w source wklejamy wcześniej przygotowany skrypt. Następnie przechodzimy na System->Scheduler, i dodajemy nowy wpis.
- Name: Podajemy dowolnie
- Start Date: wybieramy czas, od kiedy skrypt ma zacząć działać
- Interval: jak często zadania ma zostać wykonywane
- On Event: podajemy nazwę skryptu, który ma zostać wykonany. Niestety nie mamy listy wyboru, to pole musi być identyczne jak nazwa skryptu.
![mikrotik_scheduler_mail Mikrotik Scheduler Mail](https://grzegorzkowalik.com/wp-content/uploads/2023/08/mikrotik_scheduler_mail.png)
Mikrotik Backup konfiguracji – Upload kopii na VPS
RouteOS oferuje wiele narzędzia do zarządzania kopiami zapasowymi, co pozwala na tworzenie złożonych i bezpiecznych strategii backupu. Wykorzystanie tunelu Site-to-Site do VPSa Mikrus to doskonały sposób na przechowywanie kopii zapasowych poza lokalną siecią, co zwiększa bezpieczeństwo danych. Nie zalecam przesyłania kopii zapasowych bez wykorzystania VPN’a, a także pamiętajcie o zaszyfrowaniu pliku z kopią.
Zaczynamy od przygotowania skryptu do tworzenia kopii zapasowej. Zmodyfikujemy lekko wcześniejszy skrypt, zmieniając metody wysyłki kopii.
# Logowanie rozpoczęcia procesu
:log info "Rozpoczynam tworzenie kopii zapasowej"
# Ustalanie bieżącej daty
:local currentDate [/system clock get date]
# Tworzenie kopii zapasowej z datą w nazwie
:global backupName ("backup_" . $currentDate . ".backup")
/system backup save name=$backupName password=TwojeHaslo123!
# Krótka przerwa, aby zapewnić zapisanie kopii zapasowej
:delay 10s
# Logowanie rozpoczęcia wysyłania kopii zapasowej przez SFTP
:log info "Rozpoczynam wysyłanie kopii zapasowej przez SFTP"
# Wysyłanie kopii zapasowej na serwer za pomocą SFTP
:put $backupName
/tool fetch url="sftp://10.5.0.1/home/mikrotik/$backupName" src-path=$backupName upload=yes user=mikrotik password="ToJestTrudneHaslo@2023!"
# Logowanie zakończenia wysyłania kopii zapasowej
:log info "Kopia zapasowa wysłana pomyślnie przez SFTP"
Aby zautomatyzować proces, ponownie wykorzystamy funkcję harmonogramu. Procedura tworzenia cyklicznych zadań pozostaje taka sama jak opisano wcześniej. Ważne jest, aby pamiętać o aktualizacji nazwy skryptu w sekcji „On Event„.
![mikrotik_scheduler_sftp Mikrotik Scheduler SFTP](https://grzegorzkowalik.com/wp-content/uploads/2023/08/mikrotik_scheduler_sftp.png)
Mikrotik Backup konfiguracji – Podsumowanie
RouterOS oferuje zaawansowane narzędzia do tworzenia i zarządzania kopiami zapasowymi, co jest kluczowe dla zapewnienia ciągłości działania i bezpieczeństwa sieci. Oprócz binarnej całościowej kopii bezpieczeństwa, możemy wyeksportować dowolne fragmenty konfiguracji. Warto jednak pamiętać, iż binarna kopia powinna być odtworzona na tym samym urządzeniu, ponieważ zapisywane są także mac-adresy wszystkich interfejsów. Przygotowanie kopie możemy w sposób automatyczny wysyłać za pomocą maila bądź poprzez SFTP na własny serwer VPS, który nie musi znajdować się w sieci lokalnej. Wykorzystując tunel site-to-site i Wireguard, może przesyłać kopie do dowolnego serwera w Internecie.
Podsumowując, tworzenie kopii zapasowych w RouterOS jest nie tylko proste, ale także niezbędne dla zapewnienia nieprzerwanego i bezpiecznego działania sieci. Wykorzystując różne metody przesyłania i przechowywania kopii, administratorzy mogą dostosować proces backupu do indywidualnych potrzeb i wymagań bezpieczeństwa.
Polecany sprzęt
Z własnego doświadczenia mogę wam polecić poniższy sprzęt, z podziałem na ewentualne przeznaczenie routera.
Do domu i małej firmy(SOHO): hAP AX Lite , hAP AC3, RB4011, RB260GS, RB2011
hAP AC3 LTE, hAP AX2, hAP AX3, L009UiGS-2HaxD-IN, RB5009UG+S+IN, Audience
LTE: SXT LTE kit, SXT LTE6 kit, LHG 5, LHG LTE kit, Audience LTE, Chateau LTE6 ax, LTAP LTE6
Access Pointy: mAP lite, mAP, cAP AX, cAP XL AC
POE: hEX PoE
LAB: hEX lite
Średnia/Duża firma: CCR1036-12G-4S, CCR2004-16G-2S+