Teil Eins EinführungTeil Zwei Konfigurieren Sie Firewall- und NAT-RegelnTeil drei. DHCP-SetupTeil vier Routing-SetupFünfter Teil Konfigurieren eines Load BalancersHeute schauen wir uns die VPN-Konfigurationsoptionen an, die uns NSX Edge bietet.
Im Allgemeinen können wir VPN-Technologien in zwei Schlüsseltypen unterteilen:
- Site-to-Site-VPN. Am häufigsten wird IPSec verwendet, um einen sicheren Tunnel zu erstellen, z. B. zwischen dem Hauptbüro-Netzwerk und dem Netzwerk an einem Remotestandort oder in der Cloud.
- RAS-VPN. Es wird verwendet, um einzelne Benutzer mithilfe einer VPN-Client-Software mit privaten Netzwerken von Organisationen zu verbinden.
Mit NSX Edge können wir beide Optionen verwenden.
Wir werden mithilfe eines Prüfstands mit zwei NSX Edge, einem Linux-Server mit installiertem
Racoon- Daemon und einem Windows-Laptop zum Testen des RAS-VPN konfigurieren.
IPsec
- Wechseln Sie in der vCloud Director-Oberfläche zum Abschnitt Administration und wählen Sie vDC aus. Wählen Sie auf der Registerkarte Edge-Gateways den gewünschten Edge aus, klicken Sie mit der rechten Maustaste und wählen Sie Edge-Gateway-Dienste aus.

- Wechseln Sie in der NSX Edge-Oberflä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 den Remote-Standort.
- PFS - stellt sicher, dass nicht jeder neue kryptografische Schlüssel einem vorherigen Schlüssel zugeordnet ist.
- Lokale ID und lokaler Endpunkt sind die externe Adresse des NSX Edge.
- Lokale Subnetze - Lokale Netzwerke, die IPSec-VPN verwenden.
- Peer ID und Peer Endpoint - Adresse des Remote-Standorts.
- Peer-Subnetze - Netzwerke, die IPsec-VPN auf der Remote-Seite verwenden.
- Verschlüsselungsalgorithmus - Tunnelverschlüsselungsalgorithmus.

- Authentifizierung - wie wir ein Fest authentifizieren. Sie können den Pre-Shared Key oder ein Zertifikat verwenden.
- Pre-Shared Key - Geben Sie den Schlüssel an, der für die Authentifizierung verwendet wird und auf beiden Seiten übereinstimmen muss.
- Diffie-Hellman Group - Schlüsselaustauschalgorithmus.
Klicken Sie nach dem Ausfüllen der erforderlichen Felder auf Behalten.

- Fertig.

- Wechseln Sie nach dem Hinzufügen der Site zur Registerkarte Aktivierungsstatus und aktivieren Sie den IPSec-Dienst.

- Wechseln Sie nach dem Anwenden der Einstellungen 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 Servicestatus.

- show service ipsec site - Informationen über den Status der Site und die vereinbarten Parameter.

- show service ipsec sa - Statusprüfung der Security Association (SA).

- Remote Site Connectivity Check:
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 Diagnosebefehle vom Remote-Linux-Server: root@racoon:~# cat /etc/racoon/racoon.conf log debug; path pre_shared_key "/etc/racoon/psk.txt"; path certificate "/etc/racoon/certs"; listen { isakmp 80.211.43.73 [500]; strict_address; } remote 185.148.83.16 { exchange_mode main,aggressive; proposal { encryption_algorithm aes256; hash_algorithm sha1; authentication_method pre_shared_key; dh_group modp1536; } generate_policy on; } sainfo address 10.255.255.0/24 any address 192.168.0.0/24 any { encryption_algorithm aes256; authentication_algorithm hmac_sha1; compression_algorithm deflate; } === root@racoon:~# cat /etc/racoon/psk.txt 185.148.83.16 testkey === root@racoon:~# cat /etc/ipsec-tools.conf #!/usr/sbin/setkey -f flush; spdflush; spdadd 192.168.0.0/24 10.255.255.0/24 any -P in ipsec esp/tunnel/185.148.83.16-80.211.43.73/require; spdadd 10.255.255.0/24 192.168.0.0/24 any -P out ipsec esp/tunnel/80.211.43.73-185.148.83.16/require; === root@racoon:~# racoonctl show-sa isakmp Destination Cookies Created 185.148.83.16.500 2088977aceb1b512:a4c470cb8f9d57e9 2019-05-22 13:46:13 === root@racoon:~# racoonctl show-sa esp 80.211.43.73 185.148.83.16 esp mode=tunnel spi=1646662778(0x6226147a) reqid=0(0x00000000) E: aes-cbc 00064df4 454d14bc 9444b428 00e2296e c7bb1e03 06937597 1e522ce0 641e704d A: hmac-sha1 aa9e7cd7 51653621 67b3b2e9 64818de5 df848792 seq=0x00000000 replay=4 flags=0x00000000 state=mature created: May 22 13:46:13 2019 current: May 22 14:07:43 2019 diff: 1290(s) hard: 3600(s) soft: 2880(s) last: May 22 13:46:13 2019 hard: 0(s) soft: 0(s) current: 72240(bytes) hard: 0(bytes) soft: 0(bytes) allocated: 860 hard: 0 soft: 0 sadb_seq=1 pid=7739 refcnt=0 185.148.83.16 80.211.43.73 esp mode=tunnel spi=88535449(0x0546f199) reqid=0(0x00000000) E: aes-cbc c812505a 9c30515e 9edc8c4a b3393125 ade4c320 9bde04f0 94e7ba9d 28e61044 A: hmac-sha1 cd9d6f6e 06dbcd6d da4d14f8 6d1a6239 38589878 seq=0x00000000 replay=4 flags=0x00000000 state=mature created: May 22 13:46:13 2019 current: May 22 14:07:43 2019 diff: 1290(s) hard: 3600(s) soft: 2880(s) last: May 22 13:46:13 2019 hard: 0(s) soft: 0(s) current: 72240(bytes) hard: 0(bytes) soft: 0(bytes) allocated: 860 hard: 0 soft: 0 sadb_seq=0 pid=7739 refcnt=0
- Alles ist fertig, das IPSec-VPN von Standort zu Standort ist konfiguriert und funktioniert.
In diesem Beispiel haben wir das PSK zur Authentifizierung des Peers verwendet, es ist jedoch auch eine Zertifikatauthentifizierungsoption möglich. Wechseln Sie dazu zur Registerkarte Globale Konfiguration, aktivieren Sie die Zertifikatauthentifizierung und wählen Sie das Zertifikat selbst aus.
Darüber hinaus muss in den Site-Einstellungen die Authentifizierungsmethode geändert werden.


Ich stelle fest, dass die Anzahl der IPSec-Tunnel von der Größe des bereitgestellten Edge-Gateways abhängt (lesen Sie dazu in unserem ersten Artikel ).

SSL VPN
SSL VPN-Plus ist eine der Optionen für RAS-VPN. Es ermöglicht einzelnen Remotebenutzern, eine sichere Verbindung zu privaten Netzwerken hinter dem NSX Edge-Gateway herzustellen. Zwischen dem Client (Windows, Linux, Mac) und NSX Edge wird ein mit SSL VPN plus verschlüsselter Tunnel eingerichtet.
- Lass uns einrichten. Wechseln 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 dem der Server auf eingehende Verbindungen wartet, aktivieren die Protokollierung und wählen die erforderlichen Verschlüsselungsalgorithmen aus.

Hier können Sie 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 den Adresspool konfigurieren, den wir an Clients ausgeben, wenn eine Verbindung besteht. Dieses Netzwerk ist von allen vorhandenen Subnetzen in Ihrer NSX-Umgebung getrennt. Es muss nicht auf anderen Geräten in 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. Hier können Sie die Einstellungen für DNS- und WINS-Server ändern.

- Der resultierende Pool.

- Fügen Sie nun die Netzwerke hinzu, auf die Benutzer, die eine Verbindung zum VPN herstellen, Zugriff haben. Gehen Sie zur Registerkarte Private Netzwerke und klicken Sie auf +.

- Wir füllen aus:
- Netzwerk - Ein lokales Netzwerk, auf das Remotebenutzer Zugriff haben.
- Senden Sie Verkehr, es gibt zwei Möglichkeiten:
- über Tunnel - Datenverkehr über den Tunnel an das Netzwerk senden,
- Tunnel umgehen - Datenverkehr direkt unter Umgehung des Tunnels an das Netzwerk senden. - TCP-Optimierung aktivieren - Markieren Sie diese Option, wenn die Option Über Tunnel ausgewählt ist. 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 dieses bestimmten Netzwerks wird nicht optimiert. Wenn keine Portnummern angegeben sind, wird der Datenverkehr für alle Ports optimiert. Lesen Sie hier mehr über diese Funktion.

- Wechseln Sie als Nächstes zur Registerkarte Authentifizierung und klicken Sie auf +. Zur Authentifizierung verwenden wir einen lokalen Server unter NSX Edge.

- Hier können wir Richtlinien zum Generieren neuer Kennwörter auswählen und Optionen zum Blockieren von Benutzerkonten konfigurieren (z. B. die Anzahl der Wiederholungsversuche, wenn das Kennwort falsch eingegeben wurde).


- Da wir die lokale Authentifizierung verwenden, müssen wir Benutzer erstellen.

- Neben grundlegenden Dingen wie Name und Passwort können Sie hier beispielsweise verhindern, dass der Benutzer das Passwort ändert, oder ihn umgekehrt zwingen, das Passwort bei der nächsten Anmeldung zu ändern.

- Nachdem Sie alle erforderlichen Benutzer hinzugefügt haben, wechseln Sie zur Registerkarte Installationspakete, klicken Sie auf + und erstellen Sie das Installationsprogramm selbst, mit dem der Remote-Mitarbeiter zur Installation heruntergeladen wird.

- Klicken Sie auf +. Wir wählen die Adresse und den Port des Servers aus, zu dem der Client eine Verbindung herstellen soll, sowie die Plattformen, für die Sie das Installationspaket generieren möchten.

In diesem Fenster können Sie unten Client-Einstellungen für Windows festlegen. Wählen Sie:
- Client bei Anmeldung starten - Der VPN-Client wird zum Start auf einem Remotecomputer hinzugefügt.
- Desktop-Symbol erstellen - Erstellt ein VPN-Client-Symbol auf dem Desktop.
- Überprüfung des Serversicherheitszertifikats - Überprüft das Serverzertifikat bei der Verbindung.
Das Server-Setup ist abgeschlossen.

- Laden Sie nun das Installationspaket herunter, das wir im letzten Schritt auf dem Remote-PC erstellt haben. Beim Einrichten des Servers haben wir dessen externe Adresse (185.148.83.16) und Port (445) angegeben. An diese Adresse müssen wir zum Webbrowser gehen. In meinem Fall ist es 185.148.83.16 : 445.
Im Autorisierungsfenster müssen Sie die Anmeldeinformationen des zuvor erstellten Benutzers eingeben.

- Nach der Autorisierung wird eine Liste der erstellten Installationspakete angezeigt, die zum Download zur Verfügung stehen. Wir haben nur eine erstellt - und herunterladen.

- Wir klicken auf den Link, der Download des Clients beginnt.

- Entpacken Sie das heruntergeladene Archiv und führen Sie das Installationsprogramm aus.

- Führen Sie nach der Installation den Client aus, und klicken Sie im Autorisierungsfenster auf Anmelden.

- Wählen Sie im Fenster zur Zertifikatsüberprüfung die Option Ja aus.

- Wir geben die Anmeldeinformationen für den zuvor erstellten Benutzer ein und stellen sicher, dass die Verbindung erfolgreich hergestellt wurde.


- Überprüfen Sie die Statistiken des VPN-Clients auf dem lokalen Computer.


- In der Windows-Befehlszeile (ipconfig / all) sehen wir, dass ein zusätzlicher virtueller Adapter angezeigt wurde und eine Verbindung zum Remote-Netzwerk besteht. Alles funktioniert:


- Und schließlich - eine Überprüfung ü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 hilfreich sein: Wenn eine VM an einen anderen geografischen Standort verschoben wird, speichert die Maschine die IP-Adressierungseinstellungen und verliert nicht die Konnektivität mit 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 NSX- und zwei identisch erstellte geroutete Netzwerke, die mit verschiedenen Edge verbunden sind. Maschine A hat die Adresse 10.10.10.250/24, Maschine B hat die Adresse 10.10.10.2/24.
- Wechseln Sie in vCloud Director zur Registerkarte Administration, gehen Sie zum benötigten VDC, wechseln Sie zur Registerkarte Org VDC Networks und fügen Sie zwei neue Netzwerke hinzu.

- Wir wählen den gerouteten Netzwerktyp aus und binden dieses Netzwerk an unseren NSX. Wir setzen das Kontrollkästchen Als Subschnittstelle erstellen.

- Als Ergebnis sollten wir zwei Netzwerke bekommen. In unserem Beispiel heißen sie Netzwerk-a und Netzwerk-b mit denselben Gateway-Einstellungen und derselben Maske.


- Fahren wir nun mit den Einstellungen des ersten NSX fort. Dies ist der NSX, an den Netzwerk A angeschlossen ist. Er fungiert als Server.
Gehen Sie zurück zur NSx Edge-Schnittstelle / Gehen Sie zur Registerkarte VPN -> L2VPN. Wir aktivieren L2VPN, wählen den Server-Betriebsmodus aus und geben in den globalen Servereinstellungen die externe IP-Adresse des NSX an, an der der Port für den Tunnel abgehört wird. Standardmäßig wird der Socket an Port 443 geöffnet, 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 ein Fest hinzu.

- Schalten Sie das Fest ein, legen Sie den Namen, die Beschreibung, ggf. den Benutzernamen und das Passwort fest. Wir werden diese Daten später beim Einrichten der Client-Site benötigen.
Legen Sie unter Egress Optimization Gateway Address die Gateway-Adresse fest. Dies ist erforderlich, damit kein Konflikt zwischen IP-Adressen besteht, da das Gateway in unseren Netzwerken dieselbe Adresse hat. Dann drücken wir die Taste SELECT SUB-INTERFACES.

- Hier wählen wir die gewünschte Subschnittstelle aus. Speichern Sie die Einstellungen.

- Wir sehen, dass die neu erstellte Client-Site in den Einstellungen angezeigt wurde.

- Fahren wir nun mit der Konfiguration von NSX auf der Clientseite fort.
Wir gehen zu NSX Seite B, gehen zu VPN -> L2VPN, schalten L2VPN ein und setzen den L2VPN-Modus auf den Client-Modus. Legen Sie auf der Registerkarte Client Global die Adresse und den Port von NSX A fest, die wir zuvor auf der Serverseite als Listening IP und Port angegeben haben. Es ist auch erforderlich, dieselben Verschlüsselungseinstellungen festzulegen, damit sie beim Anheben des Tunnels konsistent sind.

Scrollen Sie nach unten und wählen Sie die Subschnittstelle aus, über die der Tunnel für L2VPN erstellt werden soll.
Legen Sie unter Egress Optimization Gateway Address die Gateway-Adresse fest. Legen Sie die Benutzer-ID und das Kennwort fest. Wir wählen die Subschnittstelle aus und vergessen nicht, die Einstellungen zu speichern.

- Das ist eigentlich alles. Die Client- und Servereinstellungen sind bis auf wenige Nuancen nahezu identisch.
- Jetzt können wir sehen, was unser Tunnel verdient hat, indem wir auf jedem NSX zu Statistik -> L2VPN gehen.

- Wenn wir jetzt in die Konsole eines Edge-Gateways gehen, sehen wir die Adressen beider VMs auf jeder von ihnen in der arp-Tabelle.

Hier dreht sich alles um VPN unter NSX Edge. Fragen Sie, ob etwas unklar ist. Dies ist auch der letzte Teil einer Reihe von Artikeln zur Arbeit mit NSX Edge. Wir hoffen sie waren nützlich :)