Wofür wird der IPsec IKEv1 xAuth VPN-Server verwendet?
Das IPsec-Protokoll ist eines der beliebtesten und bekanntesten VPN-Protokolle, es kann auch zu Hause für eine einfache und schnelle Verbindung zu uns nach Hause verwendet werden (Router wie AVM FRITZ! Auf Firmenebene im Büro oder in kleinen Unternehmen). Dieses VPN verwendet das IKEv1-Protokoll (Internet Key Exchange), um die Verschlüsselung zwischen verschiedenen Clients und dem Server auszuhandeln. Es verwendet auch eine Benutzername- und Kennwortauthentifizierung (xAuth), die es uns ermöglicht, den VPN-Server zu authentifizieren. Im IPsec IKEv1-xAuth-Protokoll haben wir zwei Authentifizierungsmethoden:
- Mutual PSK + xAuth: Für jeden VPN-Client, der sich verbinden möchte, wird ein Passwort gesetzt, dieser Schlüssel befindet sich sowohl auf dem Server als auch auf allen Clients. Als nächstes benötigen Sie einen Benutzernamen und ein Passwort, um sich individuell beim VPN zu authentifizieren.
- Mutual RSA + xAuth: Es muss eine CA mit Serverzertifikaten und Zertifikaten für VPN-Clients erstellt werden, sobald die Authentifizierung mit diesen Zertifikaten erfolgt ist, sind auch ein VPN-Authentifizierungsbenutzername und ein Passwort erforderlich.
Ein sehr wichtiges Detail ist, dass wir das IKEv2-Protokoll nicht verwenden können, da es mit dieser Art von VPN nicht kompatibel ist. Wir müssen ja oder nein IKEv1 verwenden, damit VPN-Clients eine ordnungsgemäße Verbindung herstellen können.
In diesem Tutorial sehen wir, wie Sie das IPsec IKEv1-xAuth-Protokoll im pfSense-Betriebssystem konfigurieren, damit VPN-Clients eine Verbindung zum Unternehmensnetzwerk herstellen und mit der Datenfreigabe beginnen können.
Konfigurieren Sie das IPsec-Protokoll
Bevor wir mit der Konfiguration des IKEv1-xAuth-IPsec-Protokolls beginnen, müssen wir bedenken, dass dieses Protokoll für Remote-Access-VPNs gedacht ist, dh solche, die als “mobile Clients” bezeichnet werden. Es wurde jedoch kein Site-to-Site-Tunnel erstellt, daher ist es am besten, ein Protokoll wie IPsec IKEv2 direkt ohne das hier besprochene xAuth zu verwenden.
Konfiguration der mobilen Clients
Das erste, was wir tun müssen, um den VPN-Server zu konfigurieren, ist, zum Abschnitt “VPN / IPsec / Mobile Clients” zu gehen, wir müssen die folgenden Optionen auswählen:
- Unterstützung für IPsec Mobile Client aktivieren
- Erweiterte Authentifizierung (xAuth)
- Benutzerauthentifizierung: Lokale Datenbank
Im Abschnitt Erweiterte Authentifizierung muss außerdem das Subnetz definiert werden, in dem sich die verbundenen VPN-Clients befinden.
- Erweiterte Authentifizierung (xAuth)
- Virtueller Adresspool: Stellen Sie Kunden eine virtuelle IP-Adresse zur Verfügung und wir erstellen ein ungenutztes Subnetz, z.B. B. 192.168.100.0/24.
- DNS-Server: Stellen Sie einen DNS-Server für Clients bereit: Hier können wir lokales DNS oder öffentliches DNS wie Google oder Cloudflare importieren.
Die endgültige Konfiguration sieht wie folgt aus:
Sobald wir es gespeichert haben, klicken wir auf “Speichern” und darüber befindet sich eine grüne Schaltfläche, um die Änderungen zu übernehmen, wir klicken auf Änderungen anwenden und wenn es neu geladen wird, müssen wir auf die grüne Schaltfläche von “Phase 1 erstellen” klicken.
Wir müssen uns daran erinnern, dass das IPsec-Protokoll klar in zwei Phasen unterteilt ist, Phase 1 ist die Authentifizierungsphase und Phase 2 ist die Phase, in der symmetrische Kryptografen über den Informationsaustausch verhandeln. Wir müssen zuerst Phase 1 mit einer Reihe von Kryptowährungen konfigurieren, die mit den meisten Clients kompatibel sind, um Phase 2 später zu konfigurieren.
Phase 1 IPsec-Konfiguration
In diesem Menü müssen wir das IPsec-Protokoll für die Verwendung mit IKEv1 mit xAuth korrekt konfigurieren, nicht alle Konfigurationen mit diesem Protokoll funktionieren. Außerdem ist ein sehr wichtiges Detail, dass die Sicherheitseinstellungen geändert werden können, wenn Sie VPN-Clients für Android, iOS, externe Programme für Windows usw. verwenden. Wir werden eine konservative Einstellung verwenden, die mit den meisten VPN-Clients kompatibel ist, aber bedenken Sie dies, da Sie möglicherweise einige Einstellungen ändern müssen.
Die Optionen, die wir konfigurieren müssen, um ordnungsgemäß zu funktionieren, sind:
- Allgemeine Information
- Schlüsselaustauschversion: IKEv1, wenn wir eine andere auswählen, funktioniert es nicht.
- Internetprotokoll: IPv4 oder IPv6
- Schnittstelle: Internet-WAN
- Beschreibung: Wir geben eine Beschreibung ein.
- Vorschlag für Phase 1 (Authentifizierung)
- Authentifizierungsmethode: Gegenseitiges PSK + xAuth
- Handelsmethode: aggressiv. Die Auswahl von Primär ist sicherer, aber VPN-Clients können möglicherweise keine Verbindung herstellen. Wenn sich das VPN gut mit der von uns angebotenen Konfiguration verbinden kann, können Sie dann auf “Main” gehen, um zu sehen, ob es funktioniert.
- Benutzername: Meine IP-Adresse
- Peer ID: Distinguished username – [email protected] oder was auch immer Sie wollen.
- Pre-Shared Key: 12345678
- Vorschlag für Phase 1 (Verschlüsselung)
- Verschlüsselungsalgorithmus: AES 128 Bit, SHA1, DH Group 2 (1024 Bit).
PfSense ist ein professionelles Betriebssystem, das Problem ist, dass VPN-Clients möglicherweise keine höhere Sicherheit unterstützen, weshalb wir keine leistungsfähigeren Algorithmen wie SHA-512 oder Group DH höher verwendet haben. Um es mit maximaler Sicherheit zu konfigurieren, müssen wir uns die IPsec-Protokolle ansehen und wissen, welche “Vorschläge” unsere VPN-Clients uns für die Verbindung senden. Basierend auf diesen erhaltenen Vorschlägen können wir die sicherste von allen auswählen.
Die anderen Konfigurationsoptionen können standardmäßig unverändert gelassen werden.
Sobald wir Phase 1 konfiguriert haben, erhalten wir eine kurze Zusammenfassung dessen, was wir gerade konfiguriert haben, wie Sie hier sehen können:
Sobald wir Phase 1 von IPsec xAuth konfiguriert haben, konfigurieren wir Phase 2.
Phase 2 IPsec-Konfiguration
In diesem Menü müssen wir zuerst den Modus auswählen, wir haben “IPv4 Tunnel” ausgewählt, wie Sie auf dem Bild sehen können. Darüber hinaus müssen wir auch das “Local Area Network” definieren, auf das VPN-Clients Zugriff haben sollen. Sie erhalten eine Route für den Zugriff. Wir können ihnen eine bestimmte IP-Adresse, ein gewünschtes Subnetz, das WAN-Subnetz und sogar das LAN-Subnetz zuweisen, das wir in pfSense haben. Bei der Option “NAT” belassen wir es bei “none”.
In diesem Konfigurationsmenü müssen wir eingeben:
- Allgemeine Information
- Funktion: IPv4-Tunnel
- Lokales Netzwerk: LAN-Subnetz
- Beschreibung: eine Beschreibung, die wir wollen.
- Angebotsphase 2 (SA / Schlüsselaustausch):
- Protokoll: ESP
- Verschlüsselungsalgorithmus: 128-Bit AES und 128-Bit AES-128-GCM
Auf dem folgenden Foto sehen Sie die endgültige Version:
- Angebotsphase 2 (SA / Schlüsselaustausch)
- Hash-Algorithmen: Wählen Sie SHA-1 und SHA-256
- PFS-Schlüsselgruppe: Deaktiviert, wird vom Protokoll nicht unterstützt.
Mit den anderen Optionen können wir die Standardeinstellungen festlegen und auf Speichern klicken, um alle Änderungen zu speichern.
Wenn Sie fertig sind, sehen Sie eine Zusammenfassung der durchgeführten Konfiguration.
Nachdem wir den xAuth-IPsec-VPN-Server konfiguriert haben, müssen wir die Benutzer in pfSense erstellen und ihnen die Berechtigungen erteilen, sich mit dem VPN zu verbinden, sonst können sie sich nicht verbinden und es tritt ein Fehler auf.
Erstellen Sie Benutzer in pfSense für die xAuth-Authentifizierung
Um verschiedene Benutzer zu erstellen, gehen Sie zu ” System- / Benutzeradministrator „Und erstellen Sie einen neuen Benutzer mit dem entsprechenden Benutzernamen und Passwort, klicken Sie auf Speichern und geben Sie ihn erneut ein, um ihn zu ändern. Wir können jetzt verschiedenen Diensten und Teilen des pfSense-Betriebssystems Berechtigungen hinzufügen. Wir müssen die Berechtigung hinzufügen für:
- Zugewiesene Rechte: Benutzer – VPN -IPsec xauth Dialin
Nachdem Sie Ihre Auswahl getroffen haben, klicken Sie auf “Speichern”, um Ihre Änderungen zu speichern. Von nun an kann sich dieser Benutzer mit seinem Passwort mit dem VPN-Server verbinden.
Offene Ports auf der pfSense-Firewall
In diesem VPN müssen wir auch Internet-WAN-Ports öffnen, insbesondere müssen wir den 500 UDP-Port und den 4500 UDP-Port öffnen. Dann haben Sie alle Details, um beide Türen zu öffnen.
Wir müssen im Abschnitt “Firewall / Regeln / WAN” eine Regel mit den folgenden Informationen erstellen:
- Aktion: Durchgehen
- Schnittstelle: WAN
- Adressfamilie: IPv4
- Protokoll: UDP
- Quelle: beliebig
- Ziel: WAN-Adresse auf Port 500
Die zweite Regel wäre:
- Aktion: Durchgehen
- Schnittstelle: WAN
- Adressfamilie: IPv4
- Protokoll: UDP
- Quelle: beliebig
- Ziel: WAN-Adresse auf Port 4500
Wie Sie sehen, müssen wir beide Regeln akzeptieren, um den Verkehr zuzulassen.
Wir speichern und übernehmen Änderungen und stellen sicher, dass diese Regel eingehalten wird. Jetzt gehen wir zum Abschnitt “IPsec”, wo wir ein “Alles zulassen” machen. Wenn wir uns dann anmelden, wenn wir den Zugriff einschränken möchten, können wir dies tun, indem wir hier die entsprechenden Regeln eingeben.
- Aktion: Durchgehen
- Schnittstelle: IPsec
- Adressfamilie: IPv4
- Protokoll: alle
- Quelle: beliebig
- Ziel: jeder
Dann sehen Sie die kürzlich erstellte Regel, die einzige, die wir haben.
Nachdem wir nun den IPsec VPN-Server konfiguriert, den Benutzer mit den entsprechenden Berechtigungen angelegt und auch in der Firewall geöffnet haben, führen wir einen Verbindungstest mit Android durch.
Verbindungstest
In unserem Fall haben wir eine VPN-Verbindung mit einem Android-Smartphone, speziell dem Huawei P30, erstellt, das einen IPsec-xAuth-PSK-Client enthält. Die Konfiguration, die wir vornehmen müssen, ist wie folgt (wir können nicht aufzeichnen, da das Betriebssystem dies als privaten Inhalt erkennt).
- Name: Wir geben dem VPN einen Namen
- Typ: IPsec Xauth PSK
- Server: Die IP- oder DDNS-Domäne Ihres VPN-Servers
- IPsec-ID: [email protected]
- Ursprünglicher gemeinsamer IPsec-Schlüssel: 12345678; den Schlüssel, den wir im Abschnitt “Pre-Shared Key” gespeichert haben.
Klicken Sie auf Speichern und verbinden. Bei der Registrierung werden wir nach einem Benutzernamen und einem Passwort gefragt. Diese Anmeldeinformationen sind das, was wir auf dem Betriebssystem selbst gespeichert haben und später eine ordnungsgemäße Verbindung herstellen konnten. Sobald dies erledigt ist, verbindet es uns problemlos mit dem VPN-Server und wir haben Zugriff auf die Verwaltung von pfSense und jedem Netzwerk.
Empfehlungen und Tipps
Wenn wir sehr sichere Verschlüsselungsalgorithmen verwenden, kann es zu Verbindungsproblemen mit einigen VPN-Clients kommen. Dies ist völlig normal und wir können je nach der in jedes Gerät integrierten Software stärkere oder bessere Algorithmen konfigurieren. Es ist aus Sicherheitsgründen immer ratsam, den sichersten zu wählen, aber dies verhindert, dass viele VPN-Clients eine Verbindung herstellen können.
Immer wenn ein IPsec-Client eine Verbindung herstellt, wird empfohlen, die Protokolle zu konsultieren und zu überprüfen, welche “Vorschläge” die verschiedenen Clients bei der Verbindung senden. Einige IPsec-Smartphones, -Tablets oder -Clients unterstützen eine aktuellere Verschlüsselung, daher müssen wir die sicherste Suite konfigurieren, damit alle Clients eine ordnungsgemäße Verbindung herstellen können.
Mit diesem Tutorial können Sie IPsec IKEv1 xAuth konfigurieren, “Mutual PSK + xAuth” in “Mutual RSA + xAuth” ändern und das entsprechende Server- und Client-Zertifikat konfigurieren. Dies führt auch zu Komplikationen, denn wenn wir eine CA mit einem Client-Zertifikat erstellen, das die neuesten Algorithmen verwendet, kann ein Verbindungsfehler auftreten, da sie es nicht erkennt.