Configurar túneis forçados para a VPN ponto a site da WAN Virtual

O túnel forçado permite-lhe enviar todo o tráfego (incluindo tráfego ligado à Internet) de utilizadores remotos para o Azure. No WAN Virtual, o túnel forçado para utilizadores remotos de VPN ponto a site significa que a rota predefinida 0.0.0.0/0 é anunciada para utilizadores VPN remotos.

Criar um hub WAN Virtual

Os passos neste artigo partem do princípio de que já implementou uma WAN virtual com um ou mais hubs.

Para criar uma NOVA WAN virtual e um novo hub, utilize os passos nos seguintes artigos:

Configurar a VPN Ponto a Site

Os passos neste artigo também partem do princípio de que já implementou um gateway de VPN Ponto a Site no hub WAN Virtual. Também pressupõe que criou perfis de VPN ponto a site para atribuir ao gateway.

Para criar o gateway de VPN Ponto a site e perfis relacionados, veja Criar um gateway de VPN Ponto a site.

Existem algumas formas de configurar o túnel forçado e anunciar a rota predefinida (0.0.0.0/0) aos seus clientes VPN de utilizador remoto ligados ao WAN Virtual.

  • Pode especificar uma rota estática 0.0.0.0/0 na PredefiniçãoRouteTable com o próximo salto Rede Virtual Ligação. Isto forçará todo o tráfego vinculado à Internet a ser enviado para uma Aplicação Virtual de Rede implementada nesse Rede Virtual spoke. Para obter instruções mais detalhadas, considere o fluxo de trabalho alternativo descrito em Encaminhar através de NVAs.
  • Pode utilizar o Gestor de Azure Firewall para configurar WAN Virtual para enviar todo o tráfego ligado à Internet através de Azure Firewall implementado no hub de WAN Virtual. Para obter os passos de configuração e um tutorial, veja a documentação do Gestor de Azure Firewall Proteger os hubs virtuais. Em alternativa, isto também pode ser configurado através de uma Política de Encaminhamento de Tráfego da Internet. Para obter mais informações, veja Routing Intent and Routing Policies (Intenções de Encaminhamento e Políticas de Encaminhamento).
  • Pode utilizar o Gestor de Firewall para enviar tráfego da Internet através de um fornecedor de segurança de terceiros. Para obter mais informações sobre esta capacidade, veja Fornecedores de segurança fidedignos.
  • Pode configurar um dos seus ramos (VPN site a site, circuito expressRoute) para anunciar a rota 0.0.0.0/0 para WAN Virtual.

Depois de configurar um dos quatro métodos acima, certifique-se de que o sinalizador EnableInternetSecurity está ativado para o gateway de VPN Ponto a site. Este sinalizador tem de ser definido como verdadeiro para que os seus clientes estejam configurados corretamente para o túnel forçado.

Para ativar o sinalizador EnableInternetSecurity, utilize o seguinte comando do PowerShell, substituindo os valores adequados para o seu ambiente.

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

Transferir o perfil de VPN Ponto a site

Para transferir o perfil de VPN Ponto a site, veja perfis globais e hub. As informações no ficheiro zip transferido do portal do Azure são essenciais para configurar corretamente os seus clientes.

Configurar o túnel forçado para clientes VPN do Azure (OpenVPN)

Os passos para configurar o túnel forçado são diferentes, consoante o sistema operativo do dispositivo de utilizador final.

Clientes Windows

Nota

Para clientes Windows, o túnel forçado com o cliente VPN do Azure só está disponível com a versão de software 2:1900:39.0 ou mais recente.

  1. Valide se a versão do cliente VPN do Azure é compatível com o túnel forçado. Para tal, clique nos três pontos na parte inferior do cliente VPN do Azure e clique em Ajuda. Em alternativa, o atalho de teclado para navegar para a Ajuda é Ctrl-H. O número da versão pode ser encontrado na parte superior do ecrã. Certifique-se de que o número da versão é 2:1900:39.0 ou posterior.

    Captura de ecrã a mostrar como configurar políticas de encaminhamento privado N V A.

  2. Abra o ficheiro zip transferido da secção anterior. Deverá ver uma pasta intitulada AzureVPN. Abra a pasta e abra azurevpnconfig.xml na sua ferramenta de edição XML favorita.

  3. No azureconfig.xml, existe um campo chamado versão. Se o número entre as etiquetas de versão for 1, altere o número da versão para 2.

    <version>2</version>
    
  4. Importe o perfil para o cliente VPN do Azure. Para obter mais informações sobre como importar um perfil, veja Instruções de importação do cliente VPN do Azure.

  5. Ligue-se à ligação recentemente adicionada. Está agora a forçar o túnel de todo o tráfego para o Azure WAN Virtual.

Clientes MacOS

Assim que um cliente macOS aprender a rota predefinida a partir do Azure, o túnel forçado é configurado automaticamente no dispositivo cliente. Não existem passos adicionais a seguir. Para obter instruções sobre como utilizar o cliente de VPN do Azure macOS para ligar ao gateway de VPN ponto a site do WAN Virtual, consulte o Guia de Configuração do macOS.

Configurar o túnel forçado para clientes IKEv2

Para clientes IKEv2, não pode utilizar diretamente os perfis executáveis transferidos a partir de portal do Azure. Para configurar corretamente o cliente, terá de executar um script do PowerShell ou distribuir o perfil de VPN através de Intune.

Com base no método de autenticação configurado no gateway de VPN Ponto a site, utilize um ficheiro de Configuração EAP diferente. Os ficheiros de Configuração EAP de exemplo são fornecidos abaixo.

IKEv2 com autenticação de certificado de utilizador

Para utilizar certificados de utilizador para autenticar utilizadores remotos, utilize o script do PowerShell de exemplo abaixo. Para importar corretamente os conteúdos dos ficheiros VpnSettings e EAP XML para o PowerShell, navegue para o diretório adequado antes de executar o comando Do PowerShell Get-Content .

# 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 

O exemplo seguinte mostra um ficheiro EAP XML para autenticação baseada em certificado de utilizador. Substitua o campo IssuerHash pelo Thumbprint do Certificado de Raiz para garantir que o seu dispositivo cliente seleciona o certificado correto a apresentar no servidor VPN para autenticação.

<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 com autenticação de certificado de computador

Para utilizar certificados de computador para autenticar utilizadores remotos, utilize o script do PowerShell de exemplo abaixo. Para importar corretamente os conteúdos dos ficheiros VpnSettings e EAP XML para o PowerShell, navegue para o diretório adequado antes de executar o comando Do PowerShell Get-Content .

# 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 com autenticação de servidor RADIUS com nome de utilizador e palavra-passe (EAP-MSCHAPv2)

Para utilizar a autenticação RADIUS baseada em nome de utilizador e palavra-passe (EAP-MASCHAPv2) para autenticar utilizadores remotos, utilize o script do PowerShell de exemplo abaixo. Para importar corretamente os conteúdos dos ficheiros VpnSettings e EAP XML para o PowerShell, navegue para o diretório adequado antes de executar o comando Do PowerShell Get-Content .

# 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 

Um ficheiro XML EAP de exemplo é o seguinte.

<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 com autenticação de servidor RADIUS com certificados de utilizador (EAP-TLS)

Para utilizar a autenticação RADIUS baseada em certificados (EAP-TLS) para autenticar utilizadores remotos, utilize o script do PowerShell de exemplo abaixo. Tenha em atenção que, para importar o conteúdo dos ficheiros VpnSettings e EAP XML para o PowerShell, terá de navegar para o diretório adequado antes de executar o comando Do PowerShell Get-Content .

# 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 

Abaixo encontra-se um ficheiro XML EAP de exemplo. Altere o campo TrustedRootCA para o thumbprint do certificado da Autoridade de Certificação e o IssuerHash para ser o thumbprint do Certificado de Raiz.

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

Passos seguintes

Para obter mais informações sobre WAN Virtual, consulte as FAQ.