Configurare il tunneling forzato per la VPN da punto a sito della rete WAN virtuale

Il tunneling forzato consente di inviare tutto il traffico (incluso il traffico associato a Internet) da utenti remoti ad Azure. In rete WAN virtuale, il tunneling forzato per gli utenti remoti VPN da punto a sito indica che la route predefinita 0.0.0.0/0 viene pubblicizzata agli utenti VPN remoti.

Creare un hub di rete WAN virtuale

I passaggi descritti in questo articolo presuppongono che sia già stata distribuita una rete WAN virtuale con uno o più hub.

Per creare una nuova rete WAN virtuale e un nuovo hub, attenersi ai passaggi descritti negli articoli seguenti:

Configurare la VPN da punto a sito

I passaggi descritti in questo articolo presuppongono anche che sia già stato distribuito un gateway VPN da punto a sito nell'hub rete WAN virtuale. Si presuppone inoltre di aver creato profili VPN da punto a sito da assegnare al gateway.

Per creare il gateway VPN da punto a sito e i profili correlati, vedere Creare un gateway VPN da punto a sito.

Esistono due modi per configurare il tunneling forzato e annunciare la route predefinita (0.0.0.0/0) ai client VPN utente remoti connessi a rete WAN virtuale.

  • È possibile specificare una route statica 0.0.0.0/0 nella route defaultRouteTable con hop successivo Rete virtuale Connessione. In questo modo tutto il traffico associato a Internet verrà inviato a un'appliance virtuale di rete distribuita in tale spoke Rete virtuale. Per istruzioni più dettagliate, prendere in considerazione il flusso di lavoro alternativo descritto in Instradare tramite appliance virtuali di rete.
  • È possibile usare Firewall di Azure Manager per configurare rete WAN virtuale per inviare tutto il traffico a internet tramite Firewall di Azure distribuito nell'hub rete WAN virtuale. Per i passaggi di configurazione e un'esercitazione, vedere la documentazione di Firewall di Azure Manager Protezione degli hub virtuali. In alternativa, questa opzione può essere configurata anche tramite un criterio di routing del traffico Internet. Per altre informazioni, vedere Routing Intent and Routing Policies.For more information, see Routing Intent and Routing Policies.
  • È possibile usare Gestione firewall per inviare il traffico Internet tramite un provider di sicurezza di terze parti. Per altre informazioni su questa funzionalità, vedere Provider di sicurezza attendibili.
  • È possibile configurare uno dei rami (VPN da sito a sito, circuito ExpressRoute) per annunciare la route 0.0.0.0/0 a rete WAN virtuale.

Dopo aver configurato uno dei quattro metodi precedenti, assicurarsi che il flag EnableInternetSecurity sia attivato per il gateway VPN da punto a sito. Questo flag deve essere impostato su true affinché i client siano configurati correttamente per il tunneling forzato.

Per attivare il flag EnableInternetSecurity, usare il comando di PowerShell seguente, sostituendo i valori appropriati per l'ambiente.

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

Scaricare il profilo VPN da punto a sito

Per scaricare il profilo VPN da punto a sito, vedere Profili globali e hub. Le informazioni nel file ZIP scaricato da portale di Azure sono fondamentali per configurare correttamente i client.

Configurare il tunneling forzato per i client VPN di Azure (OpenVPN)

I passaggi per configurare il tunneling forzato sono diversi, a seconda del sistema operativo del dispositivo dell'utente finale.

Client Windows

Nota

Per i client Windows, il tunneling forzato con il client VPN di Azure è disponibile solo con la versione 2:1900:39.0 o successiva.

  1. Verificare che la versione del client VPN di Azure sia compatibile con il tunneling forzato. A tale scopo, fare clic sui tre puntini nella parte inferiore del client VPN di Azure e fare clic su ? In alternativa, il tasto di scelta rapida per passare alla Guida è CTRL-H. Il numero di versione è reperibile nella parte superiore dello schermo. Verificare che il numero di versione sia 2:1900:39.0 o versione successiva.

    Screenshot che mostra come configurare i criteri di routing privato N V A.

  2. Aprire il file ZIP scaricato dalla sezione precedente. Verrà visualizzata una cartella denominata AzureVPN. Aprire la cartella e aprire azurevpnconfig.xml nello strumento di modifica XML preferito.

  3. In azureconfig.xmlè presente un campo denominato version. Se il numero tra i tag di versione è 1, impostare il numero di versione su 2.

    <version>2</version>
    
  4. Importare il profilo nel client VPN di Azure. Per altre informazioni su come importare un profilo, vedere Istruzioni per l'importazione del client VPN di Azure.

  5. Connettersi alla connessione appena aggiunta. A questo momento si esegue il tunneling forzato di tutto il traffico verso Azure rete WAN virtuale.

Client MacOS

Dopo che un client macOS apprende la route predefinita da Azure, il tunneling forzato viene configurato automaticamente nel dispositivo client. Non ci sono altri passaggi da eseguire. Per istruzioni su come usare il client VPN di Azure macOS per connettersi al gateway VPN da punto a sito rete WAN virtuale, vedere la Guida alla configurazione di macOS.

Configurazione del tunneling forzato per i client IKEv2

Per i client IKEv2, non è possibile usare direttamente i profili eseguibili scaricati da portale di Azure. Per configurare correttamente il client, è necessario eseguire uno script di PowerShell o distribuire il profilo VPN tramite Intune.

In base al metodo di autenticazione configurato nel gateway VPN da punto a sito, usare un file di configurazione EAP diverso. Di seguito sono riportati i file di configurazione EAP di esempio.

IKEv2 con autenticazione del certificato utente

Per usare i certificati utente per autenticare gli utenti remoti, usare lo script di PowerShell di esempio riportato di seguito. Per importare correttamente il contenuto dei file XML VpnSettings e EAP in PowerShell, passare alla directory appropriata prima di eseguire il comando Get-Content Di 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 

Nell'esempio seguente viene illustrato un file XML EAP per l'autenticazione basata su certificato utente. Sostituire il campo IssuerHash con l'identificazione personale del certificato radice per assicurarsi che il dispositivo client selezioni il certificato corretto da presentare al server VPN per l'autenticazione.

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

IKEv2 con autenticazione del certificato del computer

Per usare i certificati del computer per autenticare gli utenti remoti, usare lo script di PowerShell di esempio seguente. Per importare correttamente il contenuto dei file XML VpnSettings e EAP in PowerShell, passare alla directory appropriata prima di eseguire il comando Get-Content Di 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 

IKEv2 con autenticazione server RADIUS con nome utente e password (EAP-MSCHAPv2)

Per usare l'autenticazione RADIUS basata su nome utente e password (EAP-MASCHAPv2) per autenticare gli utenti remoti, usare lo script di PowerShell di esempio riportato di seguito. Per importare correttamente il contenuto dei file XML VpnSettings e EAP in PowerShell, passare alla directory appropriata prima di eseguire il comando Get-Content Di 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 

Di seguito è riportato un esempio di file XML EAP.

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

IKEv2 con autenticazione server RADIUS con certificati utente (EAP-TLS)

Per usare l'autenticazione RADIUS basata su certificati (EAP-TLS) per autenticare gli utenti remoti, usare lo script di PowerShell di esempio riportato di seguito. Si noti che per importare il contenuto dei file VPNSettings e XML EAP in PowerShell, è necessario passare alla directory appropriata prima di eseguire il comando Get-Content 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 

Di seguito è riportato un file XML EAP di esempio. Modificare il campo TrustedRootCA impostando l'identificazione personale del certificato dell'autorità di certificazione e issuerHash come identificazione personale del certificato radice.

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

Passaggi successivi

Per altre informazioni sulla rete WAN virtuale, vedere le domande frequenti.