Windows istemcisinde VPN cihaz tünellerini yapılandırma

Always On VPN, cihaz veya makine için ayrılmış bir VPN profili oluşturma olanağı sağlar. Always On VPN bağlantıları iki tür tünel içerir:

  • Cihaz tüneli , kullanıcılar cihazda oturum açmadan önce belirtilen VPN sunucularına bağlanır. Oturum açma öncesi bağlantı senaryoları ve cihaz yönetimi amaçları cihaz tüneli kullanır.

  • Kullanıcı tüneli yalnızca bir kullanıcı cihazda oturum açtığında bağlanır. Kullanıcı tüneli, kullanıcıların VPN sunucuları aracılığıyla kuruluş kaynaklarına erişmesini sağlar.

Yalnızca bir kullanıcı cihazda veya makinede oturum açtığında bağlanan kullanıcı tünellerinden farklı olarak, cihaz tüneli kullanıcı oturum açmadan önce VPN'nin bağlantı kurmasına izin verir. Hem cihaz tüneli hem de kullanıcı tüneli KENDI VPN profilleriyle bağımsız olarak çalışır, aynı anda bağlanabilir ve farklı kimlik doğrulama yöntemlerini ve diğer VPN yapılandırma ayarlarını uygun şekilde kullanabilir. Kullanıcı tüneli SSTP ve IKEv2'yi, cihaz tüneli ise yalnızca SSTP geri dönüş desteği olmadan IKEv2'yi destekler.

Kullanıcı tüneli, hem kurumsal hem de BYOD senaryolarına izin vermek için etki alanına katılmış, etki alanına katılmamış (çalışma grubu) veya Microsoft Entra ID'ye bağlı cihazlarda desteklenir. Tüm Windows sürümlerinde kullanılabilir ve platform özellikleri UWP VPN eklenti desteği yoluyla üçüncü taraflara sunulur.

Cihaz tüneli yalnızca Windows 10 Enterprise veya Education sürüm 1709 veya üzerini çalıştıran etki alanına katılmış cihazlarda yapılandırılabilir. Cihaz tünelinin üçüncü taraf denetimi için destek yoktur. Sistemde yalnızca Bir Cihaz Tüneli kullanılıyorsa, Bir Ad Çözümleme İlkesi tablosu (NRPT) yapılandırabilirsiniz. Sistemde Kullanıcı Tüneli ve Cihaz Tüneli kullanılıyorsa, Ad Çözümleme İlkesi tablosunu (NRPT) yalnızca Kullanıcı Tüneli'nde kullanabilirsiniz.

Cihaz tüneli Zorlamalı tüneli desteklemiyor. Bunu Split Tunnel olarak yapılandırmanız gerekir. |

Prerequisites

VPN bağlantıları için makine sertifikası kimlik doğrulamasını etkinleştirmeniz ve gelen VPN bağlantılarının kimliğini doğrulamak için bir kök sertifika yetkilisi tanımlamanız gerekir.

$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

Cihaz Tüneli Özellikleri ve Gereksinimleri

VPN Cihazı Tünel Yapılandırması

Aşağıdaki örnek XML profili, cihaz bağlantı tüneli üzerinden yalnızca istemci tarafından başlatılan çekmelerin gerekli olduğu senaryolar için iyi bir kılavuz sunar. Trafik filtreleri, cihaz tünelini yalnızca yönetim trafiğiyle kısıtlamak için kullanılabilir. Bu yapılandırma, Windows Update, tipik Grup İlkesi (GP) ve Microsoft Endpoint Configuration Manager güncelleştirme senaryolarının yanı sıra önbelleğe alınmış kimlik bilgileri veya parola sıfırlama senaryoları olmadan ilk oturum açma için VPN bağlantısı için iyi çalışır.

Windows Uzaktan Yönetimi (WinRM), Uzak GPUpdate ve uzak Configuration Manager güncelleştirme senaryoları gibi sunucu tarafından başlatılan gönderme durumları için, trafik filtrelerinin kullanılamaması için cihaz tünelinde gelen trafiğe izin vermelisiniz. Cihaz tüneli profilinde trafik filtrelerini açarsanız, Cihaz Tüneli gelen trafiği reddeder. Bu sınırlama gelecek sürümlerde kaldırılacaktır.

Örnek VPN profiliXML

Aşağıda örnek VPN profiliXML verilmiştir.

<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>

Belirli dağıtım senaryolarının gereksinimlerine bağlı olarak, cihaz tüneliyle yapılandırılabilir bir diğer VPN özelliği de Güvenilen Ağ Algılama'dır.

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

Dağıtım ve Test

Windows PowerShell betiği ve Windows Yönetim Araçları (WMI) köprüsünü kullanarak cihaz tünellerini yapılandırabilirsiniz. Always On VPN cihaz tüneli YEREL SİSTEM hesabı bağlamında yapılandırılmalıdır. Bunu başarmak için Sysinternals yardımcı program paketine dahil edilen PsTools'lardan biri olan PsExec'i kullanmak gerekir.

Cihaz (.\Device) başına profil ve kullanıcı (.\User) başına profil nasıl dağıtılacağına dair yönergeler için bkz. WMI Köprü Sağlayıcısı ile PowerShell betiği kullanma.

Bir cihaz profilini başarıyla dağıttığınız doğrulamak için aşağıdaki Windows PowerShell komutunu çalıştırın:

Get-VpnConnection -AllUserConnection

Çıktı, cihaza dağıtılan cihaz genelindeki VPN profillerinin listesini görüntüler.

Örnek Windows PowerShell Betiği

Profil oluşturmak için kendi betiğinizi oluşturmanıza yardımcı olması için aşağıdaki Windows PowerShell betiğini kullanabilirsiniz.

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"

Ek Kaynaklar

VPN dağıtımınıza yardımcı olacak ek kaynaklar aşağıdadır.

VPN istemcisi yapılandırma kaynakları

Vpn istemcisi yapılandırma kaynakları aşağıdadır.

Uzaktan Erişim Sunucusu Ağ Geçidi kaynakları

Uzaktan Erişim Sunucusu (RAS) Ağ Geçidi kaynakları aşağıdadır.

Important

Cihaz Tüneli'ni bir Microsoft RAS ağ geçidiyle kullanırken, burada açıklandığı gibi IKEv2 için makine sertifikası kimlik doğrulamasına izin ver yöntemini etkinleştirerek RRAS sunucusunu IKEv2 makine sertifikası kimlik doğrulamasını destekleyecek şekilde yapılandırmanız gerekir. Bu ayar etkinleştirildikten sonra, RRAS IKEv2 bağlantılarına yalnızca açıkça tanımlanmış bir iç/özel Kök Sertifika Yetkilisine zincirleyen VPN istemci sertifikaları için izin verilmesini sağlamak için RootCertificateNameToAccept isteğe bağlı parametresiyle birlikte Set-VpnAuthProtocol PowerShell cmdlet'inin kullanılması kesinlikle önerilir. Alternatif olarak, RRAS sunucusundaki Güvenilen Kök Sertifika Yetkilileri deposu , burada açıklandığı gibi genel sertifika yetkilileri içermediğinden emin olmak için değiştirilmelidir. Diğer VPN ağ geçitleri için de benzer yöntemlerin dikkate alınması gerekebilir.