Czym jest Firewall?
Brak zrozumienia zasady działania firewall’a może skutecznie ograniczyć zarządzanie nawet podstawowymi regułami dostępu, przez co konfiguracja reguł bezpieczeństwa będzie drogą przez mękę. Na początku postaram się wam przybliżyć ogólne zasady działania firewall’a w Mikrotiku. Część ze zdobytej wiedzy możecie wykorzystać przy konfiguracji polityk bezpieczeństwa u innych producentów. Główną zasadom działania każdej zapory jest filtrowanie pakietów, w zależności od usytuowania urządzenia w sieci, możemy filtrować ruch Północ-Południe czyli wejście/wyjście do i z Internetu, oraz Wschód-Zachód, czyli ruch w Data Center(wewnętrzny ruch). Zawsze istnieje zagrożenie ataku ze strony Internetu. Poprawnie skonfigurowany firewall może odgrywać kluczową role w bezpieczeństwie infrastruktury sieciowej. Urządzenia te pracują w 3,4 oraz 7 warstwie modelu OSI. Warstwa 3 czyli, adresy IP, warstwa 4, czyli porty, warstwa 7 aplikacyjna. Używanie reguł w warstwie 7 dość mocno wpływa na wydajność router, lepiej w tej materii spełniają się Next Generation Firewall, ale to już inna półka cenowa. Przykład konfiguracji NGFW z wykorzystanie Palo Alto Networks PA-220, możecie sprawdzić pod tym linkiem.
Jak działa firewall?
Podstawowym zadaniem każdego firewall’a jest analiza ruchu przychodzącego i wychodzącego, poprzez filtrowanie pakietów pod kątem zgodności ze stworzonymi politykami bezpieczeństwa. Zgodnie z najlepszymi zasadami bezpieczeństwa trzymaj się reguły „co jest niedopuszczone jest zabronione„, i w takiej konwencji należy tworzyć polityki bezpieczeństwa. Kolejność reguł ma bardzo duże znaczenie, ponieważ sprawdzane są z góry na dół, dlatego ostatnia reguła powinna blokować cały niedozwolony ruch „Deny all„. Nawet w średnich firmach, reguł firewalla może być nawet kilkaset, dlatego pamiętaj o odpowiednich nazwach czy też komentarzach. Ułatwi to pracę innym adminom oraz Tobie.
Firewall Mikrotik
W zakładce Firewall znajdziemy podział na kilka modułów, jednak najważniejsze z nich to: Filter Rules, NAT, Mangle, Connections, Layer 7. Z punktu bezpieczeństwa dobrą praktyką jest stosowanie się do metody blokowania całego ruchu, tworząc oddzielne reguł na ruch dozwolony. Taki standard zwiększa prace dla administratorów, ponieważ każda nowa usługa, port musi posiadać swoją oddzielną regułę zezwalającą na dostęp. Największa zaletą jest kontrola nad poziomem zabezpieczeń routera oraz ruchem sieciowym, zmniejszając przy tym ryzyko nieuprawnionego dostępu do infrastruktury wewnętrznej.
Filter Rules
Moduł odpowiedzialny za sterowanie ruchem dozwolony bądź zabronionym. Zasada działania podobna do list ACL u innych producentów. Jeżeli chcemy, aby dostęp do winboxa był tylko dla konkretnych adresów IP, to regułę należy stworzyć w tym module. Podczas tworzenia reguły musimy wskazać jaki to jest rodzaj ruchu(chain):
- forward: ruch przechodzący przez router. Jeżeli mamy kilka podsieci, albo kilka vlanów i chcemy zablokować ruch między tymi vlanami, to właśnie chain wskazujemy na forward
- input: ruch przychodzący do routera, np. allow lista na połączenia do winbox’a z Internetu
- output: ruch wychodzący z routera przez konkretny interfejs
NAT
Mechanizm translacji adresów, dzięki któremu wewnętrzne adresy prezentują się publicznym adresem routera(Source NAT). Rozróżniamy dwa rodzaje NAT, source NAT oraz destination NAT. Destination NAT używamy w przypadku przekierowania publicznego adresu IP na wewnętrzny adres w sieci, najczęściej wykorzystywany przy przekierowaniu portów pod rejestrator cyfrowy, kamery IP.
Mangle
Mangle służy do pewnego rodzaju oznaczania pakietów, oznaczenia widoczne są w obrębie routera. Dodatkowo Mangle może zmieniać nagłówki pakietów. Wykorzystywane przy konfiguracji wielu łącz internetowych, load balancingu
Connections Tracking
W bardzo dużym skrócie możemy określić Connections Tracking jako monitor bieżących połączeń zarówno TCP jak i UDP.
Layer7
Moduł odpowiedzialny za wyszukiwanie zdefiniowanych wzorców w pakietach ICMP/UDP/TCP. Dzięki L7 możemy np. blokować strony, które zawiejają konkretny ciąg znaków.
Budowanie reguł
Firewall w Mikrotiku działa podobnie jak u innych producentów, czyli reguły sprawdzane są od góry do dołu. W przypadku czystej konfiguracji nie mamy żadnych reguł, co oznacza, iż cały ruch jest dozwolony. Nie zalecam pozostawienia pustego Filter Rules. Znamy już przeznaczenie każdego z moduł. Dodając nową regułę mamy całą masę opcji do wyboru. Opiszę najważniejsze z nich:
- Chain
- Action
W zależności od miejsca dodawania reguły opcje dostępne przy chain mogą być różne.
Podobna zasada występuje przy wyborze opcji Action, jednak tu możliwości mamy znacznie więcej.
Domyślnie każda akcja ustawiona jest na accept, co oznacza iż ruch jest dozwolony. Pole akcji definiuje co ma się stać z danym pakietem spełniającym określone w regule warunki. Podstawowe akcje:
- accept – zezwala na ruch
- drop – blokuje ruch
- add-src(dst)-to-address-list – dynamiczne dodanie adresów IP(src- źródłowy adres, dst-docelowy adres) do list dostępowych(access-list).
- jump – przekazanie pakietu do innego łańcucha(chain), zdefiniowanej w polu jump-target
- log – logowanie informacji o każdym pakiecie, który pasuje do reguł.
Dobre praktyki
1. Nie wystawiaj usług do Internetu
Jestem przeciwnikiem wszystkich reguł typu fail2ban. Nigdy nie wystawiają do Internetu takich usług jak SSH, RDP, jeżeli potrzebujesz dostęp z internetu, użyj access listy ze zdefiniowanymi adresami publicznymi, aczkolwiek dużo bezpieczniejszym rozwiązaniem jest VPN i dostęp do usług tylko z sieci wewnętrznej.
2. Mikrosegmentacja
Przygotuj różne vlany, adresacje dla poszczególnych usług/pracowników/działów. Zrób osobną podsieć dla urządzeń VoIP, managmentu, gości. Ogranicz dostęp do urządzeń sieciowy per dozwolone adresy IP.
3. Blokuj wszystko
Wymaga dużo więcej pracy dla administratorów, ale pozwalaj tylko na zdefiniowany w regułach ruch. Przy tworzeniu reguł pamiętaj o portach, nie zostawiaj 0-65355. Przy wydajniejszym sprzęcie filtru ruch po aplikacjach(Layer7).
4. Czytelność reguł
Przyjmij standard nazewnictwa reguł np. LAN-to-Inet, Deny-ALL. Używaj komentarzy, przy wiekszej ilości reguł są bardzo przydatne.
5. Nie dubluj reguł
Używaj list dostępowych, nie twórz nowych reguł dla pojedynczych hostów
6. Pracuj z włączoną opcją Safe Mode
Podczas konfiguracji Firewall’a używaj opcji Safe Mode, zapobiegniesz niepotrzebnym wyjazdom, w celu zresetowania routera.
7. Sprawdzaj działanie reguł
Sprawdź poprawność działania stworzonej reguł. Przy każdej regule znajduje się kolumna Packet, jeżeli wynosi 0 przy testach, to gdzieś popełniłeś błąd.
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+
Witam,
czy jest możliwosc podac przykładowych reguł firewall-a?
czy domyslny skrypt po resecie urządzenia jest wystarczający?
Domyślne reguły na początek są dobre. Więcej informacji znajdziesz w artykule Bezpieczny RouterOS
Thank you!!1