Heute werfen wir einen Blick auf die VPN-Konfigurationsmöglichkeiten, die uns NSX Edge bietet.
Im Allgemeinen können wir VPN-Technologien in zwei Schlüsseltypen einteilen:
Site-to-Site-VPN. Die häufigste Verwendung von IPSec besteht darin, einen sicheren Tunnel zu erstellen, beispielsweise zwischen einem Hauptbüronetzwerk und einem Netzwerk an einem entfernten Standort oder in der Cloud.
Fernzugriffs-VPN. Wird verwendet, um einzelne Benutzer mithilfe der VPN-Client-Software mit privaten Unternehmensnetzwerken zu verbinden.
Mit NSX Edge können wir beide Optionen nutzen.
Wir werden mithilfe einer Testbank mit zwei NSX Edge einen Linux-Server mit installiertem Daemon konfigurieren Waschbär und ein Windows-Laptop zum Testen von Remote Access VPN.
IPsec
Gehen Sie in der vCloud Director-Benutzeroberfläche zum Abschnitt „Verwaltung“ und wählen Sie das vDC aus. Wählen Sie auf der Registerkarte „Edge Gateways“ den benötigten Edge aus, klicken Sie mit der rechten Maustaste und wählen Sie „Edge Gateway Services“ aus.
Gehen Sie in der NSX Edge-Benutzeroberfläche zur Registerkarte „VPN-IPsec VPN“, dann zum Abschnitt „IPsec VPN-Sites“ und klicken Sie auf „+“, um eine neue Site hinzuzufügen.
Füllen Sie die erforderlichen Felder aus:
Aktiviert – aktiviert die Gegenstelle.
PFS – stellt sicher, dass jeder neue kryptografische Schlüssel nicht mit einem vorherigen Schlüssel verknüpft ist.
Lokale ID und lokaler Endpunktt ist die externe Adresse des NSX Edge.
Lokales Subnetzs – lokale Netzwerke, die IPsec VPN verwenden.
Peer-ID und Peer-Endpunkt – Adresse der Gegenstelle.
Peer-Subnetze – Netzwerke, die IPsec VPN auf der Remote-Seite verwenden.
Authentifizierung - wie wir den Peer authentifizieren. Sie können einen Pre-Shared Key oder ein Zertifikat verwenden.
Geteilter Schlüssel - Geben Sie den Schlüssel an, der zur Authentifizierung verwendet wird und auf beiden Seiten übereinstimmen muss.
Diffie Hellman Group – Schlüsselaustauschalgorithmus.
Nachdem Sie die erforderlichen Felder ausgefüllt haben, klicken Sie auf „Behalten“.
Fertig.
Gehen Sie nach dem Hinzufügen der Site zur Registerkarte „Aktivierungsstatus“ und aktivieren Sie den IPsec-Dienst.
Nachdem die Einstellungen übernommen wurden, gehen Sie zur Registerkarte Statistik -> IPsec VPN und überprüfen Sie den Status des Tunnels. Wir sehen, dass der Tunnel gestiegen ist.
Überprüfen Sie den Tunnelstatus über die Edge-Gateway-Konsole:
show service ipsec – Überprüfen Sie den Status des Dienstes.
Service-IPsec-Site anzeigen – Informationen über den Status der Site und ausgehandelte Parameter.
show service ipsec sa – Überprüfen Sie den Status der Security Association (SA).
Konnektivität mit einer Remote-Site prüfen:
root@racoon:~# ifconfig eth0:1 | grep inet
inet 10.255.255.1 netmask 255.255.255.0 broadcast 0.0.0.0
root@racoon:~# ping -c1 -I 10.255.255.1 192.168.0.10
PING 192.168.0.10 (192.168.0.10) from 10.255.255.1 : 56(84) bytes of data.
64 bytes from 192.168.0.10: icmp_seq=1 ttl=63 time=59.9 ms
--- 192.168.0.10 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 59.941/59.941/59.941/0.000 ms
Konfigurationsdateien und zusätzliche Befehle zur Diagnose von einem Remote-Linux-Server:
Alles ist bereit, Site-to-Site-IPsec-VPN ist betriebsbereit.
In diesem Beispiel haben wir PSK für die Peer-Authentifizierung verwendet, aber auch eine Zertifikatauthentifizierung ist möglich. Gehen Sie dazu zur Registerkarte „Globale Konfiguration“, aktivieren Sie die Zertifikatauthentifizierung und wählen Sie das Zertifikat selbst aus.
Darüber hinaus müssen Sie in den Site-Einstellungen die Authentifizierungsmethode ändern.
Ich stelle fest, dass die Anzahl der IPsec-Tunnel von der Größe des eingesetzten Edge Gateways abhängt (lesen Sie dazu in unserem erster Artikel).
SSL VPN
SSL VPN-Plus ist eine der Remote Access VPN-Optionen. Es ermöglicht einzelnen Remote-Benutzern, sich sicher mit privaten Netzwerken hinter dem NSX Edge Gateway zu verbinden. Bei SSL VPN-plus wird ein verschlüsselter Tunnel zwischen dem Client (Windows, Linux, Mac) und NSX Edge aufgebaut.
Beginnen wir mit der Einrichtung. Gehen Sie in der Systemsteuerung des Edge Gateway-Dienstes zur Registerkarte SSL VPN-Plus und dann zu Servereinstellungen. Wir wählen die Adresse und den Port aus, an denen der Server auf eingehende Verbindungen lauscht, aktivieren die Protokollierung und wählen die erforderlichen Verschlüsselungsalgorithmen aus.
Hier können Sie auch das Zertifikat ändern, das der Server verwenden wird.
Wenn alles fertig ist, schalten Sie den Server ein und vergessen Sie nicht, die Einstellungen zu speichern.
Als Nächstes müssen wir einen Adresspool einrichten, den wir den Clients bei der Verbindung zuweisen. Dieses Netzwerk ist von allen vorhandenen Subnetzen in Ihrer NSX-Umgebung getrennt und muss nicht auf anderen Geräten in den physischen Netzwerken konfiguriert werden, mit Ausnahme der Routen, die darauf verweisen.
Gehen Sie zur Registerkarte „IP-Pools“ und klicken Sie auf +.
Wählen Sie Adressen, Subnetzmaske und Gateway aus. Hier können Sie auch die Einstellungen für DNS- und WINS-Server ändern.
Der resultierende Pool.
Fügen wir nun die Netzwerke hinzu, auf die Benutzer, die sich mit dem VPN verbinden, Zugriff haben. Gehen Sie zur Registerkarte „Private Netzwerke“ und klicken Sie auf +.
Wir füllen aus:
Netzwerk – ein lokales Netzwerk, auf das Remote-Benutzer Zugriff haben.
Senden Sie Datenverkehr. Es gibt zwei Möglichkeiten:
- über Tunnel – Datenverkehr durch den Tunnel an das Netzwerk senden,
— Tunnel umgehen – Datenverkehr direkt unter Umgehung des Tunnels an das Netzwerk senden.
Aktivieren Sie die TCP-Optimierung – prüfen Sie, ob Sie die Over-Tunnel-Option ausgewählt haben. Wenn die Optimierung aktiviert ist, können Sie die Portnummern angeben, für die Sie den Datenverkehr optimieren möchten. Der Datenverkehr für die verbleibenden Ports in diesem bestimmten Netzwerk wird nicht optimiert. Wenn keine Portnummern angegeben sind, wird der Datenverkehr für alle Ports optimiert. Lesen Sie mehr über diese Funktion hier.
Gehen Sie als Nächstes zur Registerkarte Authentifizierung und klicken Sie auf +. Zur Authentifizierung verwenden wir einen lokalen Server auf dem NSX Edge selbst.
Hier können wir Richtlinien zur Generierung neuer Passwörter auswählen und Optionen zum Blockieren von Benutzerkonten konfigurieren (z. B. die Anzahl der Wiederholungsversuche bei falscher Passworteingabe).
Da wir die lokale Authentifizierung verwenden, müssen wir Benutzer erstellen.
Neben grundlegenden Dingen wie Name und Passwort können Sie hier beispielsweise dem Benutzer verbieten, das Passwort zu ändern, oder ihn umgekehrt dazu zwingen, das Passwort bei der nächsten Anmeldung zu ändern.
Nachdem alle erforderlichen Benutzer hinzugefügt wurden, gehen Sie zur Registerkarte Installationspakete, klicken Sie auf + und erstellen Sie das Installationsprogramm selbst, das von einem Remote-Mitarbeiter zur Installation heruntergeladen wird.
Drücken Sie +. Wählen Sie die Adresse und den Port des Servers aus, mit dem sich der Client verbinden soll, sowie die Plattformen, für die Sie das Installationspaket generieren möchten.
Unten in diesem Fenster können Sie die Client-Einstellungen für Windows festlegen. Wählen:
Client bei Anmeldung starten – der VPN-Client wird zum Start auf dem Remote-Computer hinzugefügt;
Desktop-Symbol erstellen – erstellt ein VPN-Client-Symbol auf dem Desktop;
Validierung des Serversicherheitszertifikats – validiert das Serverzertifikat bei der Verbindung.
Die Servereinrichtung ist abgeschlossen.
Laden wir nun das Installationspaket, das wir im letzten Schritt erstellt haben, auf einen Remote-PC herunter. Bei der Einrichtung des Servers haben wir dessen externe Adresse (185.148.83.16) und Port (445) angegeben. An diese Adresse müssen wir in einem Webbrowser gehen. In meinem Fall ist es so 185.148.83.16: 445.
Im Autorisierungsfenster müssen Sie die zuvor erstellten Benutzeranmeldeinformationen eingeben.
Nach der Autorisierung sehen wir eine Liste der erstellten Installationspakete, die zum Download zur Verfügung stehen. Wir haben nur eines erstellt – wir werden es herunterladen.
Wir klicken auf den Link, der Download des Clients beginnt.
Entpacken Sie das heruntergeladene Archiv und führen Sie das Installationsprogramm aus.
Starten Sie nach der Installation den Client und klicken Sie im Autorisierungsfenster auf „Anmelden“.
Wählen Sie im Fenster zur Zertifikatsüberprüfung die Option Ja aus.
Wir geben die Zugangsdaten des zuvor erstellten Benutzers ein und sehen, dass die Verbindung erfolgreich hergestellt wurde.
Wir überprüfen die Statistiken des VPN-Clients auf dem lokalen Computer.
In der Windows-Befehlszeile (ipconfig / all) sehen wir, dass ein zusätzlicher virtueller Adapter aufgetaucht ist und eine Verbindung zum Remote-Netzwerk besteht, alles funktioniert:
Und schließlich überprüfen Sie dies über die Edge Gateway-Konsole.
L2-VPN
L2VPN wird benötigt, wenn Sie mehrere geografisch kombinieren müssen
verteilte Netzwerke in einer Broadcast-Domäne.
Dies kann beispielsweise bei der Migration einer virtuellen Maschine nützlich sein: Wenn eine VM in einen anderen geografischen Bereich verschoben wird, behält die Maschine ihre IP-Adressierungseinstellungen bei und verliert nicht die Verbindung zu anderen Maschinen, die sich in derselben L2-Domäne befinden.
In unserer Testumgebung verbinden wir zwei Standorte miteinander und nennen sie A bzw. B. Wir haben zwei NSXs und zwei identisch erstellte geroutete Netzwerke, die an verschiedene Edges angeschlossen sind. Maschine A hat die Adresse 10.10.10.250/24, Maschine B hat die Adresse 10.10.10.2/24.
Gehen Sie in vCloud Director zur Registerkarte „Verwaltung“, gehen Sie zu dem benötigten VDC, gehen Sie zur Registerkarte „Organisations-VDC-Netzwerke“ und fügen Sie zwei neue Netzwerke hinzu.
Wählen Sie den gerouteten Netzwerktyp aus und binden Sie dieses Netzwerk an unseren NSX. Wir setzen die Checkbox Als Subschnittstelle erstellen.
Als Ergebnis sollten wir zwei Netzwerke erhalten. In unserem Beispiel heißen sie Netzwerk-a und Netzwerk-b mit denselben Gateway-Einstellungen und derselben Maske.
Kommen wir nun zu den Einstellungen des ersten NSX. Dies ist der NSX, mit dem Netzwerk A verbunden ist. Er fungiert als Server.
Wir kehren zur NSx Edge-Schnittstelle zurück / Gehen Sie zur Registerkarte VPN -> L2VPN. Wir schalten L2VPN ein, wählen den Server-Betriebsmodus und geben in den globalen Servereinstellungen die externe NSX-IP-Adresse an, an der der Port für den Tunnel lauscht. Standardmäßig wird der Socket auf Port 443 geöffnet, dies kann jedoch geändert werden. Vergessen Sie nicht, die Verschlüsselungseinstellungen für den zukünftigen Tunnel auszuwählen.
Gehen Sie zur Registerkarte Server-Sites und fügen Sie einen Peer hinzu.
Wir schalten den Peer ein, legen den Namen und die Beschreibung fest, legen bei Bedarf den Benutzernamen und das Passwort fest. Diese Daten benötigen wir später beim Einrichten der Client-Site.
In Egress Optimization Gateway Address legen wir die Gateway-Adresse fest. Dies ist notwendig, damit es nicht zu Konflikten zwischen IP-Adressen kommt, da das Gateway unserer Netzwerke die gleiche Adresse hat. Klicken Sie dann auf die Schaltfläche UNTERSCHNITTSTELLEN AUSWÄHLEN.
Hier wählen wir das gewünschte Subinterface aus. Wir speichern die Einstellungen.
Wir sehen, dass die neu erstellte Client-Site in den Einstellungen aufgetaucht ist.
Fahren wir nun mit der Konfiguration von NSX auf der Clientseite fort.
Wir gehen zu NSX-Seite B, gehen zu VPN -> L2VPN, aktivieren L2VPN und stellen den L2VPN-Modus auf Client-Modus ein. Legen Sie auf der Registerkarte „Client Global“ die Adresse und den Port von NSX A fest, die wir zuvor als Listening IP und Port auf der Serverseite angegeben haben. Es ist außerdem erforderlich, dieselben Verschlüsselungseinstellungen festzulegen, damit sie beim Hochfahren des Tunnels konsistent sind.
Wir scrollen nach unten und wählen die Subschnittstelle aus, über die der Tunnel für L2VPN aufgebaut werden soll.
In Egress Optimization Gateway Address legen wir die Gateway-Adresse fest. Benutzer-ID und Passwort festlegen. Wir wählen die Subschnittstelle aus und vergessen nicht, die Einstellungen zu speichern.
Eigentlich ist das alles. Die Einstellungen auf Client- und Serverseite sind bis auf einige Nuancen nahezu identisch.
Jetzt können wir sehen, dass unser Tunnel funktioniert hat, indem wir auf einem beliebigen NSX zu Statistik -> L2VPN gehen.
Wenn wir nun auf die Konsole eines beliebigen Edge Gateways gehen, sehen wir auf jedem von ihnen in der Arp-Tabelle die Adressen beider VMs.
Das dreht sich alles um VPN auf NSX Edge. Fragen Sie nach, wenn etwas unklar ist. Es ist außerdem der letzte Teil einer Artikelserie zum Arbeiten mit NSX Edge. Wir hoffen, dass sie hilfreich waren 🙂