Freigeben über


Konfigurieren von VPN-Gerätetunneln im Windows-Client

Mit Always On VPN können Sie ein dediziertes VPN-Profil für ein Gerät oder einen Computer erstellen. Always On-VPN-Verbindungen umfassen zwei Typen von Tunneln:

  • Der Gerätetunnel stellt eine Verbindung mit angegebenen VPN-Servern bereit, bevor sich Benutzer beim Gerät anmelden. Ein Gerätetunnel wird für Verbindungsszenarios vor der Anmeldung und zur Geräteverwaltung verwendet.

  • Der Benutzertunnel stellt nur eine Verbindung her, nachdem sich ein Benutzer beim Gerät anmeldet. Mit dem Benutzertunnel können Benutzer über VPN-Server auf Organisationsressourcen zugreifen.

Im Gegensatz zum Benutzertunnel, der sich erst nach der Anmeldung eines Benutzers beim Gerät oder Computer verbindet, ermöglicht der Gerätetunnel dem VPN, eine Verbindung herzustellen, bevor sich der Benutzer anmeldet. Sowohl Gerätetunnel als auch Benutzertunnel funktionieren unabhängig mit ihren VPN-Profilen, können gleichzeitig verbunden werden und können je nach Bedarf unterschiedliche Authentifizierungsmethoden und andere VPN-Konfigurationseinstellungen verwenden. Der Benutzertunnel unterstützt SSTP und IKEv2, und der Gerätetunnel unterstützt nur IKEv2, ohne Unterstützung von SSTP-Fallback.

Der Benutzertunnel wird auf Domänen-Geräten, Geräten ohne Verbindung zu einer Domäne (Arbeitsgruppen) oder Geräten mit Microsoft Entra ID-Verbindung unterstützt, um sowohl Unternehmens- als auch BYOD-Szenarien zu ermöglichen. Er ist in allen Windows-Editionen verfügbar, und die Plattformfeatures stehen Drittanbietern über die UWP-VPN-Plug-In-Unterstützung zur Verfügung.

Der Gerätetunnel kann nur auf in die Domäne eingebundenen Geräten konfiguriert werden, die mindestens über die Version 1709 von Windows 10 Enterprise oder Education verfügen. Die Steuerung des Gerätetunnels durch Drittanbieter wird nicht unterstützt. Wenn nur ein Gerätetunnel auf einem System verwendet wird, können Sie eine NRPT-Tabelle (Name Resolution Policy) konfigurieren. Wenn ein Benutzer- und ein Gerätetunnel auf einem System verwendet werden, können Sie die NRPT-Tabelle (Name Resolution Policy) nur für den Benutzertunnel verwenden.

Tunnelerzwingung wird vom Gerätetunnel nicht unterstützt. Er muss als geteilter Tunnel (Split Tunneling) konfiguriert werden. |

Prerequisites

Sie müssen die Computerzertifikatauthentifizierung für VPN-Verbindungen aktivieren und eine Stammzertifizierungsstelle für die Authentifizierung eingehender VPN-Verbindungen definieren.

$VPNRootCertAuthority = "Common Name of trusted root certification authority"
$RootCACert = (Get-ChildItem -Path cert:LocalMachine\root | Where-Object {$_.Subject -Like "*$VPNRootCertAuthority*" })
Set-VpnAuthProtocol -UserAuthProtocolAccepted Certificate, EAP -RootCertificateNameToAccept $RootCACert -PassThru

Gerätetunnel: Features und Anforderungen

Konfiguration von VPN-Gerätetunneln

Das folgende XML-Beispielprofil ist eine gute Orientierungshilfe für Szenarien, in denen nur clientseitig initiierte Pullvorgänge über den Gerätetunnel erforderlich sind. Datenverkehrsfilter werden genutzt, um den Gerätetunnel auf Verwaltungsdatenverkehr zu beschränken. Diese Konfiguration eignet sich gut für Windows Update, für typische Updateszenarien im Zusammenhang mit Gruppenrichtlinien (Group Policy, GP) und Microsoft Endpoint Configuration Manager sowie für VPN-Konnektivität bei der ersten Anmeldung ohne zwischengespeicherte Anmeldeinformationen oder für Szenarien zur Kennwortzurücksetzung.

Bei Anwendungsfällen mit serverseitig initiierten Pushvorgängen wie Windows-Remoteverwaltung (WinRM), Remote-Gruppenrichtlinienaktualisierung und Configuration Manager-Remoteaktualisierungen müssen Sie eingehenden Datenverkehr für den Gerätetunnel zulassen. Daher können keine Datenverkehrsfilter verwendet werden. Wenn Sie im Gerätetunnelprofil Datenverkehrsfilter aktivieren, wird eingehender Datenverkehr vom Gerätetunnel verweigert. Diese Einschränkung wird in zukünftigen Releases entfernt.

Exemplarisches VPN-Profil (XML)

Hier sehen Sie das exemplarische VPN-Profil in XML:

<VPNProfile>
  <NativeProfile>
<Servers>vpn.contoso.com</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>10.10.0.2</Address>
<PrefixSize>32</PrefixSize>
  </Route>
  <Route>
<Address>10.10.0.3</Address>
<PrefixSize>32</PrefixSize>
  </Route>
<!-- traffic filters for the routes specified above so that only this traffic can go over the device tunnel -->
  <TrafficFilter>
<RemoteAddressRanges>10.10.0.2, 10.10.0.3</RemoteAddressRanges>
  </TrafficFilter>
<!-- 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>

Abhängig von den Anforderungen des jeweiligen Bereitstellungsszenarios kann ein weiteres VPN-Feature mit dem Gerätetunnel konfiguriert werden: die Erkennung vertrauenswürdiger Netzwerke.

 <!-- inside/outside detection -->
  <TrustedNetworkDetection>corp.contoso.com</TrustedNetworkDetection>

Bereitstellung und Testen

Sie können Gerätetunnel mithilfe eines Windows PowerShell-Skripts sowie unter Verwendung der WMI-Brücke (Windows Management Instrumentation, Windows-Verwaltungsinstrumentation) konfigurieren. Der Always On VPN-Gerätetunnel muss im Kontext des LOKALEN SYSTEMkontos konfiguriert werden. Dazu ist es notwendig, PsExec zu verwenden, einer der PsTools , die in der Sysinternals-Suite von Dienstprogrammen enthalten sind.

Richtlinien zur Bereitstellung gerätespezifischer (.\Device) bzw. benutzerspezifischer (.\User) Profile finden Sie unter Verwenden der PowerShell-Skripterstellung mit dem WMI-Bridge-Anbieter.

Führen Sie den folgenden Windows PowerShell-Befehl aus, um sich zu vergewissern, dass Sie ein Geräteprofil erfolgreich bereitgestellt haben:

Get-VpnConnection -AllUserConnection

Die Ausgabe enthält eine Liste der geräteweiten VPN-Profile, die auf dem Gerät bereitgestellt sind.

Exemplarisches Windows PowerShell-Skript

Sie können das folgende Windows PowerShell-Skript verwenden, um Ihr eigenes Skript für die Profilerstellung zu erstellen:

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"

Zusätzliche Ressourcen

Im Anschluss finden Sie weitere Ressourcen, die bei der VPN-Bereitstellung hilfreich sind.

Ressourcen für die VPN-Clientkonfiguration

Hier finden Sie Ressourcen für die VPN-Clientkonfiguration:

RAS-Gatewayressourcen

Hier finden Sie RAS-Gatewayressourcen (Remote Access Server, Remotezugriffsserver):

Important

Wenn Sie einen Gerätetunnel mit einem Microsoft RAS-Gateway verwenden, müssen Sie den RRAS-Server so konfigurieren, dass er die IKEv2-Computerzertifikatauthentifizierung unterstützt, indem Sie die Authentifizierungsmethode Computerzertifikatauthentifizierung für IKEv2 zulassen wie hier beschrieben aktivieren. Nachdem diese Einstellung aktiviert wurde, wird dringend empfohlen, dass das Set-VpnAuthProtocol PowerShell-Cmdlet zusammen mit dem optionalen Parameter RootCertificateNameToAccept verwendet wird, um sicherzustellen, dass RRAS IKEv2-Verbindungen nur für VPN-Clientzertifikate zulässig sind, die mit einer explizit definierten internen/privaten Stammzertifizierungsstelle verkettet sind. Alternativ sollte der Speicher Vertrauenswürdige Stammzertifizierungsstellen auf dem RRAS-Server geändert werden, um sicherzustellen, dass er keine öffentlichen Zertifizierungsstellen enthält, wie hier erläutert. Ähnliche Methoden müssen ggf. auch für andere VPN-Gateways in Betracht gezogen werden.