Firewall Podstawy [konfiguracja Mikrotik Router OS]
W tym artykule pokażę, jak skonfigurować podstawowe reguły na firewall’u MikroTik’a zabezpieczając działanie podstawowych usług.
Konfigurację w formie video obejrzysz TUTAJ 🙂
1. Topologia

Konfiguracja firewall’a dotyczy Mikrotik’a 1 wskazanego na powyższym obrazku oznaczonego czerwoną ramką. Podstawowa konfiguracja będzie dotyczyła zakresów adresacji przedstawionej na rysunku.
Sieć 10.253.253.0/24 w przedstawionym środowisku pełni rolę sieci WAN, na tej sieci będą uruchomione 2 tunele:
1. Interfejs WG1 – Tunel Wireguard Site-to-Site
2. Interfejs WG2 – Tunel Road Warior (Remote Access) dla zdalnych użytkowników
Uruchomiona jest również maskarada (NAT) na interfejsie eth1 Mikrotika 1.
Poszczególne podsieci będą używane do pisania reguł w przedstawionej topologii połączeń Mikrotika 1.
2. Konfiguracja Firewall’a Mikrotik 1 przez Winbox

Zacznijmy od wyłączenia wszystkich nieużywanych usług
2.1 Lista Uruchomionych Usług na Mikrotik 1

Otworzysz nowe okno z listą usług:

Na zielono Mikrotik oznacza uruchomione usługi, wyłącz wszystkie nieużywane, powinny być oznaczone na szaro. W moim przykładzie wykorzystuję jedynie dostęp po SSH oraz Winbox’a do konfiguracji podstawowych reguł firewalla.
2.2 Wybranie kontekstu konfiguracji

2.3 Kolejność Przetwarzania Reguł
Zwróć uwagę z jakim numerem reguła jest umieszczona w kontekście konfiguracji firewall’a, zobaczysz to w kolumnie oznaczonej #. Reguły analizowane są w podanej kolejności dla każdego pakietu, jeżeli więc reguła 1 będzie prawidłowa dla danego pakietu, to kolejne reguły nie będą już analizowane dla takiego pakietu.
W związku z powyższym umieszczaj bardziej specyficzne reguły powyżej bardziej ogólnych reguł.

2.4 Chain – Zestaw reguł dla różnych typów ruchu
Implementacja firewalla na Mikrotik RouterOS oparta jest o 3 rodzaje przetwarzania pakietów zwane „chain”:
- Input – Reguła przetwarza pakiety kierowane do IP przypisanego do routera Mikrotik
- Forward – Reguła przetwarza pakiety przechodzące przez router Mikrotik, adres IP źródłowy oraz docelowy nie są przypisane do żadnego z interfejsów Mikrotika
- Output – Reguła przetwarza pakiety pochodzące z adresu IP przypisanego do interfejsu routera Mikrotik
Zastanów się jaki typ ruchu chcesz przepuszczać i wybierz typ przypisania reguły dla każdego z powyjesz 3 opisanych typów niezależnie.

2.5 Akcja Przypisana do Reguły
W tym podstawowym poradniku opiszę jedynie 2 podstawowe najczęściej używane akcje do reguł firewall:
- Accept – akceptuje pakiet trafajacy w kryteria danej reguły i przekazuje do dalszego przetwarzania prze router Mikrotika, najczęściej przekazuje pakiet zgodnie z tablicą routingu.
- Drop – odrzuca pakiet bez dodatkowych komunikatów diagnostycznych, najczęściej stosowany tryb odrzucania pakietów.
Dobrą praktyką jest stworzenie wprost reguł odrzucających ruch na końcu naszej listy reguł, dzięki temu możemy sprawdzać ilośc odrzuconych pakietów i mieć informację o odrzucanym ruchu. Dla głębszej analizy dla możemy włączyć logowanie ruchu przy regułach odrzucających.

2.6 Opisanie funkcji poszczególnych reguł
Dla łatwiejszego zrozumienia koncepcji budowania reguł opiszę każdą z kategorii pokazywanych reguł. Jeżeli tylko możesz dodawaj komentarz do każdej reguły lub grupy reguł dla lepszego zrozumienia schematu polityki w przyszłości.
2.6.1 Nawiązane połączenia
Pierwszymi 2 regułami jest zezwolenie na pakiety powracające w ramach ustanowionych połączeń lub połączeń powiązanych. Jeżeli nawiążesz połączenie FTP, to do przesyłania danych ustanawiane jest osobne połączenie, dzięki takiej regule, automatycznie pakiety z obu sesji będą przepuszczane na routerze Mikrotik, zarówno dla ruchu Input oraz Forward.

2.6.2 Sieć Zarządzania
Ogranicz dostęp do możliwości zarządzania swoim routerem, najbezpieczniej jest to zrobić organizując wyznaczoną sieć zarządzania i najlepiej dedykowaną stacje przesiadkową. To będzie najbezpieczniejszy sposób, ponieważ taka stacja przesiadkowa nie powinna być używana do innych zadań, a więc i ryzyko zainfekowania jest małe w stosunku do stacji roboczej wykorzystywanej do różnych czynności.
Jeżeli taką stację przesiadkową zainstalujesz w swojej sieci, to możesz ograniczyć dostęp do interfejsów zarządzania swojego routera jedynie do konkretnego interfejsu IP stacji przesiadkowej.
W przedstawionym przykładzie stworzyłem regułę dla klasy adresowej z której wykonuję połączenia do zarządzania routerem Mikrotik, na portach wykorzystywanych przez Winbox’a czyli TCP 8291.
Jak widzisz poniżej stworzyłem 2 reguły dla dwóch kierunków inicjowania ruchu, dla chain input oraz output. Każda z takich reguł będzie następnie poddana testowaniu i sprawdzę czy jest wykorzystywana, jeżeli nie będzie rejestrowała ruchu to ją usunę w przyszłości. Nie mam jeszcze szczegółowej wiedzy jak zachowuje się winbox i jaki typ ruchu będzie inicjowany, więc stworzyłem 2 reguły i będę obserwował ich działanie.

Mikrotik RouterOS Firewall – Zarządzanie
2.6.3 Zezwolenie na ruch między sieciami LAN
W przedstawionym przykładzie mam podłączonych kilka sieci LAN, dla każdego połączenia między tymi sieciami, skonfiguruję poszczególne reguły akceptowania ruchu. Wyszczególniłem następujące relacje:
- LAN Mikrotik 2 do LAN Mikrotik 1 – połączenia między komputerami sieci LAN
- LAN Mikrotik 1 do LAN Mikrotik 2 – połączenia między komputerami sieci LAN
- Wireguard Site-to-Site z Mikrotika 2 – ruch VPN z Mikrotika2
- Road Warrior – ruch VPN zdalny dostęp
- LAN to Internet – Wyjście na świat z sieci LAN Mikrotika 2
Jeżeli chcesz szczegółowo prześledzić w poniższych regułach umieszczone adresacje, wróć do pierwszego rysunku przedstawiającego topologię środowiska:
Topologia Środowiska

2.6.4 Kasowanie pakietów
Najlepszą praktyką bezpieczeństwa jest zasada blokowania wszystkiego czego wprost nie zadeklarujemy że akceptujemy. W związku z tym skonfigurowałem 3 końcowe reguły kasowania wszystkich pakietów nie pasujących do reguł ustawionych wcześniej.
Możesz zauważyć ze w mojej tablicy reguł firewall’a Mikrotika zastosowałem osobną każdą z reguł dla poszczególnych chain’ów. To dlatego że każda z tych reguł procesowana jest niezależnie.

2.7 Dodawanie nowej reguły
Dodawanie reguły można zrealizować klikając + w okienku Firewall.
Każda nowa reguła jest dodawana w końcu listy reguł, co przy mojej koncepcji reguł oznacza że nowa reguła realnie nie będzie działać, ponieważ będzie umieszczona za wszystkimi regułami z akcją drop.
Dopiero jak przesunę nową regułę będzie ona realnie działała. Możesz przesunąć kolejność reguł lewym przyciskiem myszki i umieścić ją w dowolnym miejscu listy reguł.

2.8 Budowanie polityki i testowanie
Tworzenie polityki zawsze wiążę z testowaniem, każdy wpis testuję i sprawdzam czy dany typ ruchu jest akceptowany.
Jeżeli masz sytuację działającej sieci chcesz podwyższyć poziom bezpieczeństwa, to zmień akcje końcowych reguł z akcji drop do akcji allow i dodaj logowanie pakietów trafiających w te reguły.

Dzięki takiej zmianie będziesz akceptował wszystkie pakiety na routerze, jednocześnie sprawdzając jakie pakiety trafiają w te reguły w oknie logów

Kolejnym krokiem jaki zrobię to dodawanie nowych reguł powyżej sekcji Drop ALL, tak aby wszystkie pożądane połączenia w naszej topologii były akceptowane i zmienię reguły z sekcji Drop All na akcję drop.

Podsumowanie
Jak widzisz kluczową informacją do zabezpieczania sieci, jest posiadanie informacji o systemach i połączeniach. Jeżeli takiej wiedzy nie masz, to możesz ją sobie budować logując daną część ruchu i sprawdzić jakie połączenia są rejestrowane.
Niestety bezpieczeństwo idzie w parze z ilością pracy, żeby lepiej zabezpieczyć swoją sieć, trzeba więcej o niej widzieć. Jeżeli popatrzysz na profile ataków to jedną z pierwszych czynności jakie wykonują atakujący to rozpoznanie sieci i inwentaryzacja do czego mają dostęp.
Ograniczając komunikację tylko do niezbędnego minimum znacznie utrudnisz zadanie osobom atakującym Twoją sieć.
