Distributed Firewall (DFW) ist eine im Hypervisor-Kernel eingebettete Firewall, die Zugriff und Steuerung für virtualisierte Arbeitslasten und Netzwerke bietet.

Sie können auf der Grundlage von VMware vCenter-Objekten wie Datencentern und Clustern, Namen und Tags virtueller Maschinen, Netzwerkkonstrukten wie IP-/IPSet-Adressen, VLAN (DVS Portgruppen), VXLAN (logische Switches), Sicherheitsgruppen sowie Benutzergruppen-Identität von Active Directory Richtlinien für die Zugriffssteuerung erstellen. Firewallregeln werden auf der vNIC-Ebene der einzelnen virtuellen Maschinen erzwungen, um eine konsistente Zugriffssteuerung zu ermöglichen, selbst wenn die virtuelle Maschine Gegenstand von vMotion wird.

Die NSX Distributed Firewall ist eine statusbehaftete Firewall, die den Status der aktiven Verbindungen überwacht und mit diesen Informationen ermittelt, welche Netzwerkpakete die Firewall passieren dürfen. Ein Flow wird folgendermaßen ermittelt:

  • Quelladresse

  • Quellport

  • Zieladresse

  • Zielport

  • Protokoll

Eine Distributed Firewall-Instanz auf einem ESXi-Host (eine Instanz pro vNIC einer virtuellen Maschine) enthält zwei Tabellen: eine Regeltabelle zum Speichern aller Richtlinienregeln und eine Tabelle zur Verbindungsermittlung für das Zwischenspeichern von Flow-Einträgen für Regeln, die Aktionen erlauben. DFW-Regeln werden in der Reihenfolge von oben nach unten erzwungen. Datenverkehr, der eine Firewall passieren muss, wird als Erstes mit einer Liste von Firewallregeln abgeglichen. Jedes Paket wird anhand der obersten Regel in der Regeltabelle überprüft, bevor zu den nächsten Regeln in der Tabelle nach unten übergegangen wird. Die erste Regel in der Tabelle, die den Datenverkehrsparametern entspricht, wird erzwungen. Die letzte Regel in der Tabelle ist die DFW-Standardrichtlinienregel: Pakete, die keiner Regel in der Liste vor der Standardregel entsprechen, werden von der Standardregel erzwungen.

Standardmäßig befindet sich die NSX Distributed Firewall im strikten TCP-Modus. Wenn Sie eine standardmäßige Blockierungsregel verwenden, werden die Pakete verworfen, die die Anforderungen an die Verbindung nicht erfüllen. Eine Verbindung beginnt mit einem Drei-Wege-Handshake (SYN-SYN-ACK, ACK) und endet in der Regel mit einem Zwei-Wege-Austausch (FIN, ACK).

Wenn beispielsweise ein IP-Paket Flow 3 (erstes Paket, pkt1), das der Regel 2 entspricht, von der virtuellen Maschine gesendet wird, kommt es zu folgender Richtliniensuche und zu folgendem Paket-Flow:

  1. Die Suche wird in der Tabelle der Verbindungsermittlung durchgeführt, um festzustellen, ob für den Flow bereits ein Eintrag vorhanden ist.

  2. Da Flow 3 in der Tabelle der Verbindungsermittlung nicht enthalten ist (d. h., es gibt kein Ergebnis), wird eine Suche in der Regeltabelle durchgeführt, um festzustellen, welche Regel auf Flow 3 angewendet werden kann. Die erste Regel, die dem Flow entspricht, wird erzwungen.

  3. Regel 2 entspricht Flow 3.

  4. Da für Flow 3 die Aktion „Zulassen“ festgelegt ist, wird in der Tabelle der Verbindungsermittlung ein neuer Eintrag erstellt. Das Paket wird dann außerhalb der Distributed Firewall übertragen.

Für L2-Pakete erstellt Distributed Firewall zwecks Leistungssteigerung einen Cache. L3-Pakete werden in der folgenden Reihenfolge bearbeitet:

  1. Alle Pakete werden auf den gegenwärtigen Zustand überprüft. Dieser Schritt wird ebenfalls für SYNs durchgeführt, damit unechte oder wiedergesendete SYNs für bestehende Sitzungen erkannt werden können.

  2. Wird keine Zustandsübereinstimmung gefunden, werden die Pakete bearbeitet.

  3. Wenn keine Zustandsübereinstimmung gefunden wird, wird das Paket den Regeln entsprechend bearbeitet, bis eine Übereinstimmung gefunden wird.

    • Für TCP-Pakete wird ein Zustand nur für Pakete mit einer SYN-Markierung gesetzt. Regeln, in denen kein Protokoll angegeben wird (service ANY), können Übereinstimmungen für TCP-Pakete mit jeder beliebigen Kombination an Markierungen finden.

    • Für UDP-Pakete werden 5-Tupel-Details aus dem Paket extrahiert. Ist ein Zustand nicht in der Zustandstabelle vorhanden, so wird mithilfe der extrahierten 5-Tupel-Details ein neuer Zustand erstellt. Nachfolgend erhaltene Pakete werden mit dem aktuell erstellten Zustand abgeglichen.

    • Für ICMP-Pakete werden der ICMP-Typ, Code sowie die Paketrichtung zum Erstellen eines Zustands verwendet.

Distributed Firewall kann außerdem beim Erstellen identitätsbasierter Regeln helfen. Administratoren können die Zugriffssteuerung anhand der Gruppenmitgliedschaft des Benutzers gemäß der Definition im Active Directory des Unternehmens erzwingen. Es folgen einige Szenarien, bei denen identitätsbasierte Firewallregeln verwendet werden können:

  • Ein Benutzer, der mit einem Laptop oder einem Mobilgerät auf virtuelle Anwendungen zugreift, wobei die Benutzerauthentifizierung über AD erfolgt

  • Ein Benutzer, der mit einer VDI-Infrastruktur auf virtuelle Anwendungen zugreift, wobei die virtuellen Maschinen auf Microsoft Windows basieren

Falls in Ihrer Umgebung eine Firewall-Lösung von Drittanbietern eingesetzt wird, siehe Umleiten des Datenverkehrs zu einer Anbieterlösung über die logische Firewall.