Konfigurieren eines Always On-VPN-Gerätetunnels

Das Always On-Feature wurde im Windows 10-VPN-Client eingeführt. Always On ist die Fähigkeit, eine VPN-Verbindung aufrechtzuerhalten. Mit Always On kann das aktive VPN-Profil basierend auf Triggern wie Benutzeranmeldung, Änderung des Netzwerkzustands oder aktiver Gerätebildschirm automatisch eine Verbindung herstellen und aufrechterhalten.

Sie können Gateways mit Always On verwenden, um persistente Benutzertunnel und Gerätetunnel zu Azure einzurichten.

Always On-VPN-Verbindungen umfassen zwei Typen von Tunneln:

  • Gerätetunnel: Stellt eine Verbindung mit bestimmten VPN-Servern her, bevor sich Benutzer am Gerät anmelden. Ein Gerätetunnel wird für Verbindungsszenarios vor der Anmeldung und zur Geräteverwaltung verwendet.

  • Benutzertunnel: Stellt erst dann eine Verbindung her, nachdem sich Benutzer am Gerät angemeldet haben. Mithilfe von Benutzertunneln können Sie über VPN-Server auf Organisationsressourcen zugreifen.

Gerätetunnel und Benutzertunnel arbeiten unabhängig von ihren VPN-Profilen. Sie können gleichzeitig verbunden werden und können verschiedene Authentifizierungsmethoden und andere VPN-Konfigurationseinstellungen verwenden.

In diesem Artikel erfahren Sie, wie Sie einen Always On-VPN-Gerätetunnel konfigurieren. Informationen zum Konfigurieren eines Benutzertunnels finden Sie unter Konfigurieren eines Always On-VPN-Benutzertunnels.

Konfigurieren des Gateways

Konfigurieren Sie das VPN-Gateway für die Verwendung von IKEv2 und zertifikatbasierter Authentifizierung mithilfe des Artikels Konfigurieren einer Point-to-Site-VPN-Verbindung mit einem VNET unter Verwendung der nativen Azure-Zertifikatauthentifizierung: Azure-Portal.

Konfigurieren des Gerätetunnels

Um einen Gerätetunnel einzurichten, müssen die folgenden Anforderungen erfüllt werden:

  • Das Gerät muss ein in die Domäne eingebundener Computer mit Windows 10 Enterprise oder Education ab Version 1809 sein.
  • Der Tunnel ist nur für die unter Windows integrierte VPN-Lösung konfigurierbar und wird mit IKEv2 mit Computerzertifikatsauthentifizierung eingerichtet.
  • Pro Gerät kann nur ein Gerätetunnel konfiguriert werden.
  1. Installieren Sie Clientzertifikate auf dem Client unter Windows 10 oder höher wie im Artikel Point-to-Site-VPN-Client beschrieben. Das Zertifikat muss sich im Speicher „Lokaler Computer“ befinden.
  2. Verwenden Sie diese Anweisungen, um ein VPN-Profil zu erstellen und den Gerätetunnel im Kontext des lokalen Systemkontos zu konfigurieren.

Beispiel für die Konfiguration eines Gerätetunnels

Nachdem Sie das virtuelle Netzwerkgateway konfiguriert und das Clientzertifikat im Speicher „Lokaler Computer“ auf dem Client unter Windows 10 oder höher installiert haben, verwenden Sie die folgenden Beispiele, um einen Clientgerätetunnel zu konfigurieren:

  1. Kopieren Sie den folgenden Text, und speichern Sie ihn als Datei devicecert.ps1.

    Param(
    [string]$xmlFilePath,
    [string]$ProfileName
    )
    
    $a = Test-Path $xmlFilePath
    echo $a
    
    $ProfileXML = Get-Content $xmlFilePath
    
    echo $XML
    
    $ProfileNameEscaped = $ProfileName -replace ' ', '%20'
    
    $Version = 201606090004
    
    $ProfileXML = $ProfileXML -replace '<', '&lt;'
    $ProfileXML = $ProfileXML -replace '>', '&gt;'
    $ProfileXML = $ProfileXML -replace '"', '&quot;'
    
    $nodeCSPURI = './Vendor/MSFT/VPNv2'
    $namespaceName = "root\cimv2\mdm\dmmap"
    $className = "MDM_VPNv2_01"
    
    $session = New-CimSession
    
    try
    {
    $newInstance = New-Object Microsoft.Management.Infrastructure.CimInstance $className, $namespaceName
    $property = [Microsoft.Management.Infrastructure.CimProperty]::Create("ParentID", "$nodeCSPURI", 'String', 'Key')
    $newInstance.CimInstanceProperties.Add($property)
    $property = [Microsoft.Management.Infrastructure.CimProperty]::Create("InstanceID", "$ProfileNameEscaped", 'String', 'Key')
    $newInstance.CimInstanceProperties.Add($property)
    $property = [Microsoft.Management.Infrastructure.CimProperty]::Create("ProfileXML", "$ProfileXML", 'String', 'Property')
    $newInstance.CimInstanceProperties.Add($property)
    
    $session.CreateInstance($namespaceName, $newInstance)
    $Message = "Created $ProfileName profile."
    Write-Host "$Message"
    }
    catch [Exception]
    {
    $Message = "Unable to create $ProfileName profile: $_"
    Write-Host "$Message"
    exit
    }
    $Message = "Complete."
    Write-Host "$Message"
    
  2. Kopieren Sie den folgenden Text, und speichern Sie ihn als Datei unter dem Namen VPNProfile.xml im selben Ordner wie die Datei devicecert.ps1. Bearbeiten Sie den folgenden Text, um ihn an Ihre Umgebung anzupassen.

    • <Servers>azuregateway-1234-56-78dc.cloudapp.net</Servers> <= Can be found in the VpnSettings.xml in the downloaded profile zip file
    • <Address>192.168.3.5</Address> <= IP of resource in the vnet or the vnet address space
    • <Address>192.168.3.4</Address> <= IP of resource in the vnet or the vnet address space
    <VPNProfile>  
      <NativeProfile>  
    <Servers>azuregateway-1234-56-78dc.cloudapp.net</Servers>  
    <NativeProtocolType>IKEv2</NativeProtocolType>  
    <Authentication>  
      <MachineMethod>Certificate</MachineMethod>  
    </Authentication>  
    <RoutingPolicyType>SplitTunnel</RoutingPolicyType>  
     <!-- disable the addition of a class based route for the assigned IP address on the VPN interface -->
    <DisableClassBasedDefaultRoute>true</DisableClassBasedDefaultRoute>  
      </NativeProfile> 
      <!-- use host routes(/32) to prevent routing conflicts -->  
      <Route>  
    <Address>192.168.3.5</Address>  
    <PrefixSize>32</PrefixSize>  
      </Route>  
      <Route>  
    <Address>192.168.3.4</Address>  
    <PrefixSize>32</PrefixSize>  
      </Route>  
    <!-- need to specify always on = true --> 
      <AlwaysOn>true</AlwaysOn> 
    <!-- new node to specify that this is a device tunnel -->  
     <DeviceTunnel>true</DeviceTunnel>
    <!--new node to register client IP address in DNS to enable manage out -->
    <RegisterDNS>true</RegisterDNS>
    </VPNProfile>
    
  3. Laden Sie PsExec von Sysinternals herunter, und extrahieren Sie die Dateien in C:\PSTools.

  4. Starten Sie PowerShell über eine Administrator-CMD-Eingabeaufforderung, indem Sie Folgendes ausführen:

    Für 32-Bit-Windows:

    PsExec.exe -s -i powershell
    

    Für 64-Bit-Windows:

    PsExec64.exe -s -i powershell
    

    Der Screenshot zeigt ein Eingabeaufforderungsfenster mit einem Befehl zum Starten der 64-Bit-Version von PowerShell.

  5. Wechseln Sie in PowerShell zum Ordner, in dem sich die devicecert.ps1- und VPNProfile.xml-Datei befinden, und führen Sie den folgenden Befehl aus:

    .\devicecert.ps1 .\VPNProfile.xml MachineCertTest
    

    Der Screenshot zeigt ein PowerShell-Fenster, in dem „MachineCertTest“ mithilfe des Skripts „devicesert“ ausgeführt wurde.

  6. Führen Sie rasphone aus.

    Der Screenshot zeigt das Dialogfeld „Ausführen“ mit ausgewähltem „rasphone“.

  7. Suchen Sie den Eintrag MachineCertTest, und klicken Sie auf Verbinden.

    Der Screenshot zeigt das Dialogfeld „Netzwerkverbindungen“ mit ausgewähltem „MachineCertTest“ und der Schaltfläche „Verbinden“.

  8. Wenn die Verbindung erfolgreich hergestellt wurde, starten Sie den Computer neu. Der Tunnel wird automatisch eine Verbindung herstellen.

So entfernen Sie ein Profil

Führen Sie den folgenden Befehl aus, um das Profil zu entfernen:

Screenshot eines PowerShell-Fensters, in dem der Befehl „Remove-VpnConnection -Name MachineCertTest“ ausgeführt wird.

Nächste Schritte

Informationen zur Problembehandlung finden Sie unter Azure Point-to-Site-Verbindungsprobleme.