Dlaczego ta konfiguracja jest inna

  • Prowadzenie homelaba z publiczną pulą IP obok adresacji prywatnej oznacza, że część Twojej sieci jest bezpośrednio osiągalna z internetu. Model zagrożeń to już nie „mój domowy router” — to „małe wystawione na świat centrum danych”.
  • Celem nie jest paranoja, lecz pewność: warstwowa konfiguracja, w której pojedynczy błąd lub pojedynczy przejęty host nie rozlewa się na całą sieć.
  • Projekt firewalla jest fundamentem i opisano go osobno w artykule Architektura firewalla. Ten zakłada, że ta podstawa już jest, i buduje wokół niej resztę zabezpieczeń.

1. Płaszczyzna zarządzania: zablokuj sposób logowania

  • Przenieś usługi zarządzania (SSH, panel admina) z domyślnych portów. Nie zatrzyma to ukierunkowanego atakującego, ale wyciąga Cię ze stałego szumu automatycznych skanów.
  • Przypnij te usługi wyłącznie do konkretnych sieci źródłowych — Twojego zaufanego VLAN-u, VPN-u, adresu ratunkowego — nigdy do interfejsu publicznego.
  • SSH: tylko klucze, uwierzytelnianie hasłem wyłączone, mocna kryptografia włączona. Ogranicz liczbę równoległych sesji.
  • Wyłącz każdą usługę zarządzania, której nie używasz: Telnet, FTP, API, przestarzałe warianty web. Każda wyłączona usługa to jedna mniej powierzchnia ataku do przemyślenia.
/ip service
set ssh    address=10.10.10.0/24,10.10.70.0/24 port=49111 max-sessions=1
set winbox address=10.10.10.0/24,10.10.70.0/24 port=49112 max-sessions=1
set telnet disabled=yes
set ftp    disabled=yes
set api    disabled=yes
set api-ssl disabled=yes

/ip ssh set password-authentication=no strong-crypto=yes

2. Dostęp zdalny: VPN zamiast przekierowania portów

  • Nigdy nie wystawiaj interfejsów zarządzania do internetu. Sięgaj do nich przez VPN WireGuard jest szybki, prosty i ma minimalną powierzchnię ataku.
  • Daj VPN-owi własną podsieć i umieść go w zaufanej liście interfejsów, aby klienci VPN dostawali dostęp do zarządzania bez żadnego otwartego portu poza samym nasłuchem VPN-u.
  • Używaj jednego allowed-address na peera (/32), aby każdy klient odpowiadał dokładnie jednej tożsamości. Odebranie dostępu to wtedy usunięcie pojedynczego peera.
/interface wireguard add listen-port=22 name=vpn

/interface wireguard peers add interface=vpn allowed-address=10.10.70.2/32 comment=Laptop public-key="..."

3. Wydziel usługi publiczne do DMZ

  • Wszystko osiągalne z internetu — host WWW za Cloudflare, serwer gry — należy do dedykowanego VLAN-u DMZ, odizolowanego od zaufanej sieci.
  • Umieść DMZ w liście interfejsów WAN_ONLY: może sięgać internetu, ale firewall zabrania mu inicjować połączenia do LAN-u. Jeśli host zostanie włamany, atakujący jest uwięziony w segmencie.
  • Routuj DMZ na zewnątrz przez publiczne IP i przekierowuj tylko te porty, których faktycznie potrzebuje. Nic więcej z puli publicznej nie powinno być osiągalne.
  • To różnica między „dorwali mój serwer WWW” a „dorwali cały mój dom”.

4. Kwarantanna urządzeń niezaufanych (IoT)

  • Sprzęt smart home, kamery i wszystko, czego nie da się utrzymać załatane, to najsłabsze ogniwa. Traktuj je jak już przejęte.
  • Daj im własny VLAN, również WAN_ONLY, z włączoną izolacją klientów, aby urządzenia nie mogły nawet rozmawiać między sobą. Ukryty SSID i limit klientów dodają drobnego oporu dla oportunistycznych ataków.
  • Jeśli urządzenie potrzebuje lokalnej usługi (resolvera DNS, kontrolera), dopuść dokładnie ten jeden przepływ i nic więcej — nie otwieraj całego VLAN-u do LAN-u.
  • Świadomie decyduj, gdzie żyją usługi współdzielone. Resolver siedzący w VLAN-ie IoT, który obsługuje też zaufaną sieć, oznacza, że przejęcie IoT może wpłynąć na rozwiązywanie nazw wszędzie. Lepiej hostować współdzieloną infrastrukturę w bardziej zaufanym segmencie.

5. Cloudflare: ochrona origin

  • Jeśli serwujesz stronę przez Cloudflare, zagwarantuj, że origin jest osiągalny wyłącznie przez Cloudflare — nigdy bezpośrednio po IP. Egzekwuje to jedna reguła firewalla odrzucająca ruch z WAN do 80/443 z każdego źródła spoza opublikowanej listy Cloudflare.
  • Utrzymuj tę listę adresów aktualną automatycznie skryptem z harmonogramu, zamiast edytować ją ręcznie. Reguła i skrypt są opisane w artykule Architektura firewalla.
  • Zysk: skanery uderzające bezpośrednio w Twoje publiczne IP nie dostają nic, a jedyna droga do hosta WWW biegnie przez WAF i ochronę DDoS Cloudflare.

6. Wyłącz to, czego nie używasz

  • Jeśli nie używasz IPv6, wyłącz je i dodaj jawny drop dla IPv6 z WAN-u jako obrona w głąb — nieskonfigurowany protokół, który po cichu się włączy, to martwy punkt.
  • Wyłącz funkcje discovery i wygody zwrócone ku niezaufanym sieciom: neighbor discovery ograniczone tylko do zaufanych interfejsów, MAC-server i bandwidth-server wyłączone, przycisk WPS wyłączony.
  • Wyłącz automatyczne udostępnianie nośników/SMB, jeśli nie serwujesz plików świadomie. Auto-share aktywujący się przy następnym pendrivie to ekspozycja, której nie planowałeś.
/ipv6 settings set disable-ipv6=yes forward=no

/ip neighbor discovery-settings set discover-interface-list=TRUSTED

/tool mac-server set allowed-interface-list=none
/tool mac-server ping set enabled=no
/tool bandwidth-server set enabled=no
/system routerboard wps-button set enabled=no
/disk settings set auto-media-sharing=no auto-smb-sharing=no

7. Widoczność: nie zabezpieczysz tego, czego nie widzisz

  • Wysyłaj logi z routera na zdalny syslog. Jeśli urządzenie zostanie przejęte lub się zrestartuje, lokalne logi znikają dokładnie wtedy, gdy są potrzebne — zdalne przetrwają.
  • Eksportuj dane o przepływach (IPFIX/NetFlow) do kolektora, żeby widzieć, co naprawdę z czym rozmawia. Niespodziewany ruch wychodzący z segmentu IoT lub DMZ to wczesny sygnał ostrzegawczy.
  • Loguj końcowe dropy firewalla, a nie każdy zablokowany pakiet — sygnał, nie szum.
/system logging action set remote remote=10.10.1.2 src-address=10.10.1.1
/system logging add action=remote topics=info,critical,error,warning

8. Odzyskiwalność: zaplanuj dzień, w którym sam się zablokujesz

  • Zostaw ścieżkę ratunkową: dedykowany port fizyczny w liście zaufanej na osobnej podsieci zarządzania, osiągalny nawet gdy VLAN-y lub routing padną.
  • Zaplanuj automatyczne kopie zapasowe konfiguracji i trzymaj kopię poza urządzeniem. Backup, który żyje tylko na routerze, który właśnie zamurowałeś, to żaden backup.
  • Zawsze pracuj w Safe Mode przy edycji firewalla lub routingu — opisane w artykule Architektura firewalla. Automatycznie wycofuje zmiany, jeśli sesja padnie.
/system scheduler add name=weekly-backup interval=1w on-event="/system backup save name=weekly" \
    policy=read,write,sensitive start-time=07:00:00

9. Utrzymuj system w ryzach

  • Restartuj i aktualizuj według harmonogramu. RouterOS dostaje poprawki bezpieczeństwa; pozostawanie miesiące w tyle to ryzyko samo w sobie.
  • Utrzymuj dokładny czas przez NTP z poprawną strefą. Złe zegary psują oś czasu logów i łamią ważność certyfikatów — oba liczą się dokładnie wtedy, gdy badasz incydent.
  • Okresowo przeglądaj konfigurację i usuwaj reguły, leasy i przekierowania, których już nie używasz. Martwa konfiguracja to miejsce, w którym chowają się błędy.