In Teil 1 dieser Serie habe ich die Infrastruktur für mein Always On VPN-Lab vorgestellt. Anschließend habe ich in Teil 2 die automatische Registrierung der Computer- und VPN Benutzerzertifikate mittels Gruppenrichtlinien konfiguriert, die empfohlenen AD-Gruppen und Zertifikatsvorlagen erstellt. Das Zertifikat für NPS Serverauthentifizierung, das IKEv2-Zertifikat und das SSL-Zertifikat für SSTP am VPN Server habe ich in Teil 3 installiert. In Teil 4 habe ich den Remote Access Server für Always on VPN installiert und konfiguriert. Die Konfiguration des NPS Servers kann man in Teil 5 nachlesen. In Teil 6 habe ich auf CLIENT01 eine VPN-Verbindung mit dem Namen Template erstellt. Aufgrund dieser Vorlage werde ich jetzt das Always On VPN – VPN-Profil erstellen.
VPN_Profile.xml und VPN_Profile.ps1 erstellen
Hinweis: Wie in der Microsoft Dokumentation geschrieben steht, muss die Verbindung mindestens einmal hergestellt worden sein, damit alle Werte verfügbar sind.CLIENT01 befindet sich wieder im Unternehmensnetzwerk (192.168.100.0/24). USER01 ist in der lokalen Administratoren-Gruppe von CLIENT01. MakeProfile.ps1 ist hier zu finden. Die Verbindung zu CLIENT01 darf nicht in der erweiterten Sitzung stattfinden.
- Lokal als USER01 an CLIENT01 anmelden
- Den Ordner C:\Temp und das PowerShell-Script MakeProfile.ps1 erstellen
- Im Script sind folgende Anpassungen notwendig:
$TemplateName = 'Template' $ProfileName = 'UserTunnel' $Servers = 'vpn.einfaches-netzwerk.at' $DnsSuffix = 'intern.einfaches-netzwerk.at' $DomainName = '.intern.einfaches-netwzerk.at' $DNSServers = '192.168.100.1' $TrustedNetwork = 'intern.einfaches-netzwerk.at'
- Außerdem möchte ich den gesamten VPN-Verkehr durch den Tunnel schicken. Also muss ich statt SplitTunnel > ForceTunnel angeben. Diese Einstellung befindet sich bei mir in Zeile 32 von MakeProfile.ps1:
- Datei speichern und schließen
- Noch einmal sicherstellen, dass die erweiterte Sitzung nicht aktiv ist
- PowerShell als Administrator öffnen
- Mit folgendem Befehl das VPN-Profil erstellen
. C:\Temp\MakeProfile.ps1
- Am Desktop werden folgende Dateien erstellt
- Mit folgendem Befehl das bestehende VPN-Profil löschen
Get-VpnConnection -Name 'Template' | Remove-VpnConnection -Force
- Mit folgendem Befehl das Script VPN_Profile.ps1 ausführen:
. C:\Temp\VPN_Profile.ps1
- Das VPN-Profil wurde erfolgreich erstellt
- PowerShell schließen
- CLIENT01 vom internen Netz ins externe verschieben
- Sofort wird die VPN-Verbindung aufgebaut
- PowerShell: SplitTunneling ist deaktiviert > ForceTunneling
- CLIENT01 wieder ins interne Netz verschieben > die Verbindung wird sofort wieder abgebaut
In diesem Teil habe ich das Script MakeProfile.ps1 nach C:\Temp auf CLIENT01 kopiert und das VPN_Profile erstellt. Im Anschluss habe ich das VPN-Profil ‚Template‘ gelöscht und das neue Profil installiert. Unmittelbar nach dem Verschieben von CLIENT01 ins Internet wird die Verbindung sofort aufgebaut. Fehlt jetzt noch der Maschinen-Tunnel, welcher vor dem Benutzer-Tunnel aufgebaut werden soll.
Danke für´s Lesen!
Hallo Dietmar,
vielen Dank für diese super Anleitung, ich konnte damit meine Konfiguration schnell zu funktionieren bringen.
Leider stosse ich bei einigen Test.Usern auf ein Problem: da die mehrere Benutzerzertifikate haben, werde sie immer zur Zertifikatsauswahl aufgefordert.
Ist es irgendwo möglich, das passende Zertifikat zu erzwingen?
Viele Grüße
Jens
Hallo! Vielen Dank fürs Lesen meines Blogs! Ich wüsste nicht, wie man das erzwingen kann. Aber im neuesten Preview-Update ist folgender Fix enthalten:
Addresses an issue that causes AOVPN user tunnels to use an incorrect certificate.
Vielleicht hilft das. Muss ich aber auch erst probieren.
Hallo zusammen
Schaut mal kurz in diesen Bericht rein, könnte hilfreich sein: https://directaccess.richardhicks.com/2019/05/28/always-on-vpn-users-prompted-for-certificate/