Konfigurowanie wymuszonego tunelowania dla sieci VPN typu punkt-lokacja usługi Virtual WAN

Wymuszone tunelowanie umożliwia wysyłanie całego ruchu (w tym ruchu internetowego) z użytkowników zdalnych do platformy Azure. W Virtual WAN wymuszone tunelowanie dla użytkowników zdalnych sieci VPN typu punkt-lokacja oznacza, że domyślna trasa 0.0.0.0/0 jest anonsowana do zdalnych użytkowników sieci VPN.

Tworzenie centrum Virtual WAN

W krokach opisanych w tym artykule założono, że wirtualna sieć WAN została już wdrożona z co najmniej jednym koncentratorem.

Aby utworzyć nową wirtualną sieć WAN i nowe centrum, wykonaj kroki opisane w następujących artykułach:

Konfigurowanie sieci VPN typu punkt-lokacja

W krokach opisanych w tym artykule założono również, że brama sieci VPN typu punkt-lokacja została już wdrożona w centrum Virtual WAN. Przyjęto również założenie, że utworzono profile sieci VPN typu punkt-lokacja w celu przypisania do bramy.

Aby utworzyć bramę sieci VPN typu punkt-lokacja i powiązane profile, zobacz Tworzenie bramy sieci VPN typu punkt-lokacja.

Istnieje kilka sposobów konfigurowania tunelowania wymuszonego i anonsowania trasy domyślnej (0.0.0.0/0) do klientów sieci VPN użytkownika zdalnego połączonych z Virtual WAN.

  • Możesz określić trasę statyczną 0.0.0.0/0 w domyślnej tabeliRouteTable z następnym przeskokiem Virtual Network Połączenie. Spowoduje to wymusi wysłanie całego ruchu powiązanego z Internetem do wirtualnego urządzenia sieciowego wdrożonego w Virtual Network szprychy. Aby uzyskać bardziej szczegółowe instrukcje, rozważ alternatywny przepływ pracy opisany w temacie Route through NVAs (Routing za pośrednictwem urządzeń WUS).
  • Program Azure Firewall Manager umożliwia skonfigurowanie Virtual WAN wysyłania całego ruchu powiązanego z Internetem za pośrednictwem Azure Firewall wdrożonego w centrum Virtual WAN. Aby zapoznać się z krokami konfiguracji i samouczkiem, zobacz dokumentację Azure Firewall Manager Securing virtual hubs (Zabezpieczanie koncentratorów wirtualnych). Można to również skonfigurować za pomocą zasad routingu ruchu internetowego. Aby uzyskać więcej informacji, zobacz Routing Intent and Routing Policies (Zasady routingu i routingu).
  • Usługa Firewall Manager umożliwia wysyłanie ruchu internetowego za pośrednictwem innego dostawcy zabezpieczeń. Aby uzyskać więcej informacji na temat tej możliwości, zobacz Zaufane dostawcy zabezpieczeń.
  • Możesz skonfigurować jedną z gałęzi (sieć VPN typu lokacja-lokacja, obwód usługi ExpressRoute), aby anonsować trasę 0.0.0.0/0 do Virtual WAN.

Po skonfigurowaniu jednej z powyższych czterech metod upewnij się, że flaga EnableInternetSecurity jest włączona dla bramy sieci VPN typu punkt-lokacja. Ta flaga musi być ustawiona na wartość true, aby klienci byli prawidłowo skonfigurowani do wymuszonego tunelowania.

Aby włączyć flagę EnableInternetSecurity, użyj następującego polecenia programu PowerShell, podstawiając odpowiednie wartości dla danego środowiska.

Update-AzP2sVpnGateway -ResourceGroupName "sampleRG" -Name "p2sgwsamplename" -EnableInternetSecurityFlag

Pobieranie profilu sieci VPN typu punkt-lokacja

Aby pobrać profil sieci VPN typu punkt-lokacja, zobacz profile globalne i hub. Informacje w pliku zip pobranym z Azure Portal mają kluczowe znaczenie dla prawidłowego konfigurowania klientów.

Konfigurowanie wymuszonego tunelowania dla klientów sieci VPN platformy Azure (OpenVPN)

Kroki konfigurowania wymuszonego tunelowania różnią się w zależności od systemu operacyjnego urządzenia użytkownika końcowego.

Klienci systemu Windows

Uwaga

W przypadku klientów z systemem Windows wymuszone tunelowanie za pomocą klienta sieci VPN platformy Azure jest dostępne tylko w przypadku oprogramowania w wersji 2:1900:39.0 lub nowszej.

  1. Sprawdź, czy wersja klienta sieci VPN platformy Azure jest zgodna z wymuszonym tunelowaniem. W tym celu kliknij trzy kropki w dolnej części klienta sieci VPN platformy Azure, a następnie kliknij pozycję Pomoc. Alternatywnie skrót klawiatury, aby przejść do Pozycji Pomoc, to Ctrl-H. Numer wersji można znaleźć w górnej części ekranu. Upewnij się, że numer wersji to 2:1900:39.0 lub nowszy.

    Zrzut ekranu przedstawiający sposób konfigurowania zasad routingu prywatnego N V A.

  2. Otwórz plik zip pobrany z poprzedniej sekcji. Powinien zostać wyświetlony folder o nazwie AzureVPN. Otwórz folder i otwórz azurevpnconfig.xml w ulubionym narzędziu do edycji XML.

  3. W azureconfig.xmlistnieje pole o nazwie wersja. Jeśli numer między tagami wersji to 1, zmień numer wersji na 2.

    <version>2</version>
    
  4. Zaimportuj profil do klienta sieci VPN platformy Azure. Aby uzyskać więcej informacji na temat importowania profilu, zobacz Instrukcje importowania klienta sieci VPN platformy Azure.

  5. Połącz się z nowo dodanym połączeniem. Teraz wymuszasz tunelowanie całego ruchu do usługi Azure Virtual WAN.

Klienci z systemem MacOS

Gdy klient systemu macOS dowie się, że trasa domyślna z platformy Azure, wymuszone tunelowanie jest automatycznie konfigurowane na urządzeniu klienckim. Nie ma żadnych dodatkowych kroków do wykonania. Aby uzyskać instrukcje dotyczące używania klienta sieci VPN platformy Azure dla systemu macOS do nawiązywania połączenia z bramą sieci VPN typu punkt-lokacja Virtual WAN, zobacz przewodnik konfiguracji systemu macOS.

Konfigurowanie wymuszonego tunelowania dla klientów IKEv2

W przypadku klientów IKEv2 nie można bezpośrednio używać profilów wykonywalnych pobranych z Azure Portal. Aby prawidłowo skonfigurować klienta, należy uruchomić skrypt programu PowerShell lub rozpowszechnić profil sieci VPN za pośrednictwem Intune.

Na podstawie metody uwierzytelniania skonfigurowanej w bramie sieci VPN typu punkt-lokacja użyj innego pliku konfiguracji protokołu EAP. Poniżej przedstawiono przykładowe pliki konfiguracji protokołu EAP.

Protokół IKEv2 z uwierzytelnianiem certyfikatu użytkownika

Aby użyć certyfikatów użytkownika do uwierzytelniania użytkowników zdalnych, użyj poniższego przykładowego skryptu programu PowerShell. Aby poprawnie zaimportować zawartość plików VPNSettings i EAP XML do programu PowerShell, przejdź do odpowiedniego katalogu przed uruchomieniem polecenia Get-Content programu PowerShell.

# specify the name of the VPN Connection to be installed on the client
$vpnConnectionName = "SampleConnectionName"

# get the VPN Server FQDN from the profile downloaded from Azure Portal
$downloadedXML = [xml] (Get-Content VpnSettings.xml)
$vpnserverFQDN = $downloadedXML.VpnProfile.VpnServer

# use the appropriate EAP XML file based on the authentication method specified on the Point-to-site VPN gateway
$EAPXML = [xml] (Get-Content EapXML.xml)

# create the VPN Connection
Add-VpnConnection -Name $vpnConnectionName -ServerAddress $vpnserverFQDN -TunnelType Ikev2 -AuthenticationMethod Eap -EapConfigXmlStream $EAPXML

# enabled forced tunneling
Set-VpnConnection -Name $vpnConnectionName -SplitTunneling $false 

W poniższym przykładzie pokazano plik XML protokołu EAP na potrzeby uwierzytelniania opartego na certyfikatach użytkownika. Zastąp pole IssuerHash odciskiem palca certyfikatu głównego, aby upewnić się, że urządzenie klienckie wybierze prawidłowy certyfikat do przedstawienia serwerowi sieci VPN na potrzeby uwierzytelniania.

<EapHostConfig xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
    <EapMethod>
        <Type xmlns="http://www.microsoft.com/provisioning/EapCommon">13</Type>
        <VendorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorId>
        <VendorType xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorType>
        <AuthorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</AuthorId>
    </EapMethod>
    <Config xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
        <Eap xmlns="http://www.microsoft.com/provisioning/BaseEapConnectionPropertiesV1">
            <Type>13</Type>
            <EapType xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV1">
                <CredentialsSource>
                    <CertificateStore>
                        <SimpleCertSelection>true</SimpleCertSelection>
                    </CertificateStore>
                </CredentialsSource>
                <ServerValidation>
                    <DisableUserPromptForServerValidation>false</DisableUserPromptForServerValidation>
                    <ServerNames></ServerNames>
                </ServerValidation>
                <DifferentUsername>false</DifferentUsername>
                <PerformServerValidation xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">false</PerformServerValidation>
                <AcceptServerName xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">false</AcceptServerName>
                <TLSExtensions xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">
                    <FilteringInfo xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV3">
                        <CAHashList Enabled="true">
                            <IssuerHash> REPLACE THIS WITH ROOT CERTIFICATE THUMBPRINT </IssuerHash>
                        </CAHashList>
                    </FilteringInfo>
                </TLSExtensions>
            </EapType>
        </Eap>
    </Config>
</EapHostConfig>

Protokół IKEv2 z uwierzytelnianiem certyfikatu komputera

Aby użyć certyfikatów maszyny do uwierzytelniania użytkowników zdalnych, użyj poniższego przykładowego skryptu programu PowerShell. Aby poprawnie zaimportować zawartość plików VPNSettings i EAP XML do programu PowerShell, przejdź do odpowiedniego katalogu przed uruchomieniem polecenia Get-Content programu PowerShell.

# specify the name of the VPN Connection to be installed on the client
$vpnConnectionName = "UserCertVPNConnection"

# get the VPN Server FQDN from the profile downloaded from Azure portal
$downloadedXML = [xml] (Get-Content VpnSettings.xml)
$vpnserverFQDN = $downloadedXML.VpnProfile.VpnServer

# create the VPN Connection
Add-VpnConnection -Name $vpnConnectionName -ServerAddress $vpnserverFQDN -TunnelType Ikev2 -AuthenticationMethod MachineCertificate 

# enabled forced tunneling
Set-VpnConnection -Name $vpnConnectionName -SplitTunneling $false 

Protokół IKEv2 z uwierzytelnianiem serwera RADIUS z nazwą użytkownika i hasłem (EAP-MSCHAPv2)

Aby użyć uwierzytelniania usługi RADIUS opartego na nazwie użytkownika i hasłach (EAP-MASCHAPv2) do uwierzytelniania użytkowników zdalnych, użyj poniższego przykładowego skryptu programu PowerShell. Aby poprawnie zaimportować zawartość plików VPNSettings i EAP XML do programu PowerShell, przejdź do odpowiedniego katalogu przed uruchomieniem polecenia Get-Content programu PowerShell.

# specify the name of the VPN Connection to be installed on the client
$vpnConnectionName = "SampleConnectionName"

# get the VPN Server FQDN from the profile downloaded from Azure portal
$downloadedXML = [xml] (Get-Content VpnSettings.xml)
$vpnserverFQDN = $downloadedXML.VpnProfile.VpnServer

# use the appropriate EAP XML file based on the authentication method specified on the Point-to-site VPN gateway
$EAPXML = [xml] (Get-Content EapXML.xml)

# create the VPN Connection
Add-VpnConnection -Name $vpnConnectionName -ServerAddress $vpnserverFQDN -TunnelType Point-to-sitev2 -AuthenticationMethod Eap -EapConfigXmlStream $EAPXML

# enabled forced tunneling
Set-VpnConnection -Name $vpnConnectionName -SplitTunneling $false 

Przykładowy plik XML protokołu EAP jest następujący.

<EapHostConfig xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
    <EapMethod>
        <Type xmlns="http://www.microsoft.com/provisioning/EapCommon">26</Type>
        <VendorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorId>
        <VendorType xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorType>
        <AuthorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</AuthorId>
    </EapMethod>
    <Config xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
        <Eap xmlns="http://www.microsoft.com/provisioning/BaseEapConnectionPropertiesV1">
            <Type>26</Type>
            <EapType xmlns="http://www.microsoft.com/provisioning/MsChapV2ConnectionPropertiesV1">
                <UseWinLogonCredentials>false</UseWinLogonCredentials>
            </EapType>
        </Eap>
    </Config>
</EapHostConfig>

Protokół IKEv2 z uwierzytelnianiem serwera RADIUS przy użyciu certyfikatów użytkowników (EAP-TLS)

Aby użyć uwierzytelniania usługi RADIUS opartego na certyfikatach (EAP-TLS) do uwierzytelniania użytkowników zdalnych, użyj poniższego przykładowego skryptu programu PowerShell. Pamiętaj, że aby zaimportować zawartość plików VPNSettings i EAP XML do programu PowerShell, musisz przejść do odpowiedniego katalogu przed uruchomieniem polecenia Get-Content programu PowerShell.

# specify the name of the VPN Connection to be installed on the client
$vpnConnectionName = "SampleConnectionName"

# get the VPN Server FQDN from the profile downloaded from Azure portal
$downloadedXML = [xml] (Get-Content VpnSettings.xml)
$vpnserverFQDN = $downloadedXML.VpnProfile.VpnServer

# use the appropriate EAP XML file based on the authentication method specified on the Point-to-site VPN gateway
$EAPXML = [xml] (Get-Content EapXML.xml)

# create the VPN Connection
Add-VpnConnection -Name $vpnConnectionName -ServerAddress $vpnserverFQDN -TunnelType Ikev2 -AuthenticationMethod Eap -EapConfigXmlStream $EAPXML

# enabled forced tunneling
Set-VpnConnection -Name $vpnConnectionName -SplitTunneling $false 

Poniżej znajduje się przykładowy plik XML protokołu EAP. Zmień pole TrustedRootCA na odcisk palca certyfikatu urzędu certyfikacji, a pole IssuerHash na odcisk palca certyfikatu głównego.

<EapHostConfig xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
    <EapMethod>
        <Type xmlns="http://www.microsoft.com/provisioning/EapCommon">13</Type>
        <VendorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorId>
        <VendorType xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorType>
        <AuthorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</AuthorId>
    </EapMethod>
    <Config xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
        <Eap xmlns="http://www.microsoft.com/provisioning/BaseEapConnectionPropertiesV1">
            <Type>13</Type>
            <EapType xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV1">
                <CredentialsSource>
                    <CertificateStore>
                        <SimpleCertSelection>false</SimpleCertSelection>
                    </CertificateStore>
                </CredentialsSource>
                <ServerValidation>
                    <DisableUserPromptForServerValidation>false</DisableUserPromptForServerValidation>
                    <ServerNames></ServerNames>
                    <TrustedRootCA> CERTIFICATE AUTHORITY THUMBPRINT </TrustedRootCA>
                </ServerValidation>
                <DifferentUsername>true</DifferentUsername>
                <PerformServerValidation xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">true</PerformServerValidation>
                <AcceptServerName xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">true</AcceptServerName>
                <TLSExtensions xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">
                    <FilteringInfo xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV3">
                        <CAHashList Enabled="true">
                            <IssuerHash> ROOT CERTIFCATE THUMBPRINT  </IssuerHash>
                        </CAHashList>
                    </FilteringInfo>
                </TLSExtensions>
            </EapType>
        </Eap>
    </Config>
</EapHostConfig>

Następne kroki

Aby uzyskać więcej informacji na temat Virtual WAN, zobacz często zadawane pytania.