exelban's blog

[PL] Homelab (część 3: DNS oraz firewall)

June 6, 2024

Ta część jest bardziej techniczna. W tej części opiszę jak organizowałem sieć w szczegółach, pokaże serwisy których używam i jak ich konfigurowałem.

Sieć

Po tym jak dodałem serwer do homelab musiałem trochę modyfikować sieć oraz zrobić porządek z IP adresami. Tak zmieniała się sieć:

Networks

Pozostawiłem VLAN ID 3 oraz 4 na przyszłość, jakbym kiedyś miał więcej serwerów. Każda wirtualna maszyna w proxmox dostaje ip adres z sieci homelab. W poprzednim materiale opisałem jak działa u mnie dns. Każda maszyna dns ma tą samą końcówkę 33:

Serwery DNS są ustawione dla każdej sieci w takiej samej kolejności: dns, rpi.

DNS

Tak jak pisałem wcześniej żeby nie trzymać w pamięci IP każdej maszyny lub serwisu użyłem lokalnego DNS. Daje to możliwość przypisać każdemu IP własny „adres”. Np zamiast wpisywać w przeglądarce http://192.168.5.233 (synology NAS) mogę po prostu wpisać http://nas. Ponieważ już mam pihole, zrobienia czegoś takiego zajmuje dosłownie kilka minut. W zakładce Local DNS wpisuje nazwę którą chce i IP adres do którego ta nazwa powinna być przypisana. Na tym koniec. Zdecydowałem na następujące nazewnictwo: każde urządzenie (lub maszyna wirtualna) będzie posiadać jedno słowo. A lokalne serwisy będę mieć końcówkę .home.

Na ten moment mam takie DNS:

Kiedyś usiądę i zrobię jakąś automatyzacje oby nie wpisywać tego ręczenie do PiHole. Ale na razie jest mi ok z tym. Tym bardziej że nie dodaje nowe rzeczy codziennie.

Firewall

Unifi console pozwała na ustawienie reguł dla sieci. Co pozwała np ograniczyć dostęp z jednej podsieci do innej. Np żeby urządzenie z sieci iot nie mogły się dostać do sieci default lub homelab (a lepiej do żadnej).

Networks

Poniżej jest opis wszystkich ip grup oraz reguł firewall które mam w network.

IP Groups

Firewall Rules

Bardzo ważna jest kolejność reguł. Czym wyżej znajduje się na liście tym większy priorytet ma. Więc blokada na sam koniec, a wszystko co powinno pozwalać na dostęp wyżej blokady. Inaczej reguła z blokadą będzie blokować pozwolenie.

  1. Allow established & related

    • Name: Allow established & related
    • Advanced: Manual
    • Match State: Established, Related
  2. Allow default to all vlans: pozwolić na dostęp z default do każdej innej sieci

    • Name: Allow default to all vlans
    • Source:
      • Source Type: Network
      • Network: Default
    • Destination:
      • Source Type: Port/IP Group
      • Address Group: RFC1918
  3. Allow from homelab to iot: pozwolić na dostęp z homelab do iot

    • Name: Allow from homelab to iot
    • Source:
      • Source Type: Network
      • Network: Homelab
    • Destination:
      • Source Type: Network
      • Network: IoT
  4. Allow dns from vlans: pozwolić na dostęp do dns z każdej sieci

    • Name: Allow dns from vlans
    • Source:
      • Source Type: Port/IP Group
      • Address Group: RFC1918
    • Destination:
      • Source Type: Port/IP Group
      • Address Group: PiHole
      • Port Group: PiHole port
  5. Allow TV to jellyfin: pozwolić na dostęp telewizora do jellyfin

    • Name: Allow TV to jellyfin
    • Source:
      • Source Type: Port/IP Group
      • Address Group: TV
    • Destination:
      • Source Type: Port/IP Group
      • Address Group: Media
      • Port Group: Jellyfin port
  6. Drop traffic between vlans: zabronić dostęp wszystkich sieci do innej

    • Name: Drop traffic between vlans
    • Action: Drop
    • Source:
      • Source Type: Port/IP Group
      • Address Group: RFC1918
    • Destination:
      • Source Type: Port/IP Group
      • Address Group: RFC1918
  7. Drop invalid: resetować „martwe” połączenia

    • Name: Drop invalid
    • Action: Drop
    • Advanced: Manual
    • Match State: Invalid
  8. Allow default to gateway: pozwolić na dostęp z default do konsoli unifi

    • Type: Lan Local
    • Name: Allow default to gateway
    • Source:
      • Source Type: Network
      • Network: Default
    • Destination:
      • Source Type: Port/IP Group
      • Address Group: Gateway
      • Port Group: Gateway port
  9. Block vlans to gateway: zabronić dostęp wszystkich sieci do konsoli unifi

    • Type: Lan Local
    • Name: Allow established & related
    • Action: Drop
    • Source:
      • Source Type: Port/IP Group
      • Address Group: Any
      • Port Group: Any
    • Destination:
      • Source Type: Port/IP Group
      • Address Group: Gateway
      • Port Group: Gateway port