VLAN Setup an VM mit zwei Schnittstellen

Started by flashgordon, January 23, 2020, 10:36:26 PM

Previous topic - Next topic
Hallo,

ich habe hier schon einiges über VLAN mitgelesen. Ich richte mir gerade ein Homelab ein und würde gern mein Netz in verschiedene VLANs aufteilen. Folgendes Setup habe ich mir vorgestellt:

VLAN5 -- Management (opnSense, pihole usw)
VLAN10 -- Privat (PCs, Smartphones und NAS)
VLAN20 -- DMZ/www (webserver)
VLAN30 -- Freifunkt (zwei APs und ein Offloader)
VLAN40 -- Admin (Proxmox und Debian-Adminkonsole)

(VLAN20 und VLAN40 werden 'von außen' erreichbar sein)

Ich beschäftige mich das erste mal mit VLANs und statt dem VLAN5 hatte ich eigentlich gedacht das ich das auf dem 'normalen' LAN lasse. Ich las aber öfter das es besser/im Zweifel nicht so störanfällig wäre wenn man das LAN auch als VLAN einrichtet. So also der Plan.
Da das ganze aber an einem PC hängt und per Proxmox virtualisiert wird, stehen mir nur zwei physische Schnittstellen auf dem Server zur Verfügung. Selbstredend hängen hinter der LAN-Schnittstelle noch zwei Switches die auch VLAN 'können' (Netgear ProSAFE Plus GS100).

Momentan stellen sich mir zwei Fragen:

1) Wie bekomme ich opnSense vom LAN in das VLAN5? Die 'Brücke' per FW von VLAN40 kann ich mir schon irgendwie imaginieren aber wie bringe ich die Adresse von dem Router ins VLAN5? Und das auch dort die WebGUI anliegt?
2) Hab ich das richtig verstanden das nur der Uplink zwischen opnSense und Switch sowie die Verbindung zwischen den Switches 'tagged' sein muss und die einzelnen Ports der Switches das VLAN portbasiert realisieren?

Ich habe das so gemacht das ich die Ports an den Switches entsprechend tagged konfiguriert habe und genau so auch die Ports an den Proxmox Nodes.
Mehr nicht. Du machst also nichts weiter wie aus den normalen Netzinterfaces ein VLAN Interface zu konfigurieren und dieses VLAN Interface dann als Briddge für Proxmox. Deine virtuellen Server gibst Du dann die Bridge aber ohne VLAN Konfig  und auch die OPNSense Interface bleiben ohne VLAN Konfig.

January 24, 2020, 03:11:28 PM #2 Last Edit: January 24, 2020, 03:26:12 PM by flashgordon
Danke für die Antwort. Ich habs jetzt ein wenig anders realisiert und mir ist aufgefallen das ich eine wichtige Info vergessen habe, sorry.

Das schöne an VMs ist ja das man wild rumprobieren und per try&error vorgehen kann. ;)

Was ich vergessen habe im ersten Post zu schreiben war, dass die zwei physischen Schnittstellen die beiden (LAN/WAN) jene sind, welche von opnSense genutzt werden. Eine dritte ist für das Management von Proxmox per WebGUI reserviert.

Also sieht das so aus:
Ein Server steht dort rum auf dem Proxmox läuft. Der Server hat drei Schnittstellen. Zwei davon nutzt opnSense welches als VM läuft. Die dritte Serverschnittstelle geht über einen Switch letztlich auch über die opnSense-VM, da das ganze Heimnetz damit verwaltet wird.

Ich hab jetzt die VLANs einfach wie geplant und oben beschrieben eingerichtet sowie Netzadressen vergeben. Die Standart-LAN-Schnittstelle hab ich gelöscht. Da die Proxmoxbridge an der opnSense das interne Netz verteilt 'vlan-aware' eingestellt ist, brauch ich nix anderes, oder? Das klärt ja jetzt alles opnSense, so wie ich das verstehe.
Die Proxmox-Bridge an der opnSense hängt geht über die Schnittstelle auf einen Switch (Port1: tagged/trunked) und die anderen Ports werden untagged per PVID einem VLAN zugewiesen.

Mit einer Test-Debian-VM im VLAN40 klappt das schon alles.

Nun hänge ich aber an den Firewallregeln und habe da einige Probleme:

Ich habe auf VLAN40 jetzt mit eine Scheunentorregel gearbeitet. Ist ja für den Produktiven Betrieb quark. Wie setzte ich jetzt aber das Szenario um, dass ein spezifischer Client in VLAN40 auf die WebGUI von opnSense im VLAN5 zugreifen darf? Und vor allem das das wirklich nur von VLAN40 funktioniert und die zu erreichende Adresse im VLAN5 ist.

Ich habe mal zwei Screenshots der FW-Regeln angehangen. VLAN40 ist das mit den zwei Regeln. Die zweite ist gerade mein Backup. Wäre es praktisch korrekt wenn die zweite Regeln in VLAN40 (Scheunentor) deaktiviert wäre? Oder würde ich mich denn selber ausschließen? (Andere Regeln habe ich jetzt bewusst weggelassen)

EDIT:

zum besseren Verständnis

                                                                                           
           |DSL                                                                           
           |                                                                               
           |                                                                               
  +----------------------+                                                                 
  | FritzBox             |                                                                 
  |                      |                                                                 
  +----------------------+                                                                 
                       |                                                                   
                       |ExposedHos / WAN                                                   
                       |                                                                   
+-------------------+------------------+                                                   
|                   |                  |          +----------------+                       
|      Proxmox      |   opnSense       |----------|       Switch   |                       
|                   |                  | tagged   +----------------+                       
|                   |                  | trunked        |                                 
|                   +------------------+                |                                 
|       -                              |                |                                 
|                                      |                |                                 
|                                      |                |                                 
|                                      |                |                                 
|                                      |----------------+                                 
|                                      |  untagged + PVID                                 
+--------------------------------------+  VLAN40                                           
                                                                                           


an dem Switch hängen dann die anderen Geräte in ihren VLANs.

Du solltest ja in Deiner OPNSense jetzt 2 oder mehr Netze habe. Für Deine Beschreibung also ein Netz vlan40 und eines vlan5.
Die Regeln gehen per default immer mit IN. Bedeutet sobald ein Rechner eine Verbindung zu einem anderen aufbauen will und dafür IN das Interface VLAN 40 geht weil der Rechner im VLAN40 steckt muss eine erlauben Regel rein.

Einfaches Beispiel. Du hast einen Management Client im VLAN5 und willst das WebGui der OPNSense welches über VLAN40 angesprochen werden soll aufrufen.
Regel dafür. Im Interface VLAN5 erlaubst du als sourceadresse Deinen Management Client mit Zieladresse OPNSense Webinterface IP und Zielport 8443.
Das ist nur ein Beispiel. Genau so ist es auch bei anderen Zugriffen.

Beispiel. Alle Clients aus dem Clientnetz VLAN10 sollen per HTTPS einen nextcloudserver im VLAN60 aunsurfen dürfen.

Also Ersteller Du eine Regel im VLAN10 Netz welche ein erlaubt für das Netzwerk VLAN10 als Ziel IP nextcloud mit Zielport 443. Ich hoffe ich konnte Dir da etwas Licht ins Dunkel bringen.

okay danke,

langsam kommt licht ins dunkel der firewallkonfiguration.

die admin-konsole ist in VLAN40. der zugriff auf die WebGUIist nur über eine IP im VLAN5 möglich. Also hab ich für die Schnittstelle VLAN40 folgendes eingestellt:

  • IPv4 mit dem Ziel der opnSense IP in diesem VLAN wird geblockt (kein zugriff auf die WebGUI in diesem VLAN)
  • IPv4 TCP/UDP von der IP der Adminkonsole auf die opnSense IP im VLAN5 Port 80 & 443

Ist das so okay?

weitere fragen stellen sich mir bei der konfiguration:
1.) ich kann ja bei quelle und ziel meine interfaces auswählen. da steht dann immer <interface> netzwerk und <interface> adresse. was ist da der unterschied bzgl. der regeln?
2.) was bezeichnet 'Diese Firewall' bei Quelle/Ziel genau? Die WebGUI?
2.) insgesamt habe ich 6 VLANS. gibt es eine geschickte lösung die untereinander nicht kommunizieren zu lassen? immer wenn ich für den internetzugriff mit 'any' öffne komm ich da ja wieder ran. kann ich statt 'any' auch einfach irgendwie sagen das das nur für den ausgang über WAN gilt?

Quote
1.) ich kann ja bei quelle und ziel meine interfaces auswählen. da steht dann immer <interface> netzwerk und <interface> adresse. was ist da der unterschied bzgl. der regeln?
2.) was bezeichnet 'Diese Firewall' bei Quelle/Ziel genau? Die WebGUI?

folgendes vermute ich:
zu 1.) '<interface> netzwerk' bezeichnet irgendeine beliebige adresse aus diesem netz, '<interface> adresse' bezeichnet die adresse die die schnittstelle selber belegt (und auf der die WebGUI erreichbar ist).
zu 2.) 'Diese Firewall' sind alle adressen die opnSense für die interfaces vergeben hat.

folglich könnte meine erste regel aus dem vorherigen post statt auf der konkreten IP auch auf 'VLAN40 Adresse' heißen, oder?
und um alle standartmäßig zu verbieten auf die WebGUI zu kommen dann 'Diese Firewall' nehmen (die adminkonsole hat ja die ausnahme wie oben beschrieben)? 

falls ja, bleibt aber die frage wie ich die VLANs grundsätzlich trenne aber 'Ziel: any' trotzdem verwenden kann.