Compartilhar via


Configurar o túnel forçado para a VPN ponto a site da WAN Virtual

O túnel forçado permite enviar todo o tráfego (incluindo o tráfego associado à Internet) de usuários remotos para o Azure. Na WAN Virtual, o túnel forçado para usuários remotos de VPN ponto a site significa que a rota padrão 0.0.0.0/0 é anunciada para usuários remotos de VPN.

Criar um hub de WAN Virtual

As etapas neste artigo pressupõem que você já tenha implantado uma WAN Virtual com um ou mais hubs.

Para criar uma nova WAN virtual e um novo hub, siga as etapas nos artigos a seguir:

Configurar VPN ponto a site

As etapas neste artigo também pressupõem que você já tenha implantado um gateway de VPN ponto a site no hub da WAN Virtual. Ele também assume que você tenha criado perfis de VPN ponto a site para atribuir ao gateway.

Para criar o gateway de VPN ponto a site e os perfis relacionados, confira Criar um gateway de VPN ponto a site.

Há algumas maneiras de configurar o túnel forçado e anunciar a rota padrão (0.0.0.0/0) aos seus clientes VPN de usuário remoto conectados à WAN Virtual.

  • Você pode especificar uma rota estática 0.0.0.0/0 em defaultRouteTable com a conexão de rede virtual de próximo salto. Isso forçará todo o tráfego vinculado à Internet a ser enviado para um Dispositivo Virtual de Rede implantado nessa Rede Virtual spoke. Para saber mais detalhes, considere o fluxo de trabalho alternativo descrito em Roteamento por meio de NVAs.
  • Você pode usar o Gerenciador de Firewall do Azure para configurar a WAN Virtual para enviar todo o tráfego vinculado à Internet por meio do Firewall do Azure implantado no hub da WAN Virtual. Para obter etapas de configuração e um tutorial, veja a documentação do Gerenciador de Firewall do Azure Protegendo hubs virtuais. Como alternativa, isso também pode ser configurado usando uma Política de Roteamento de Tráfego da Internet. Para saber mais, confira Políticas e intenções de roteamento.
  • Você pode usar o Gerenciador de Firewall para enviar o tráfego da Internet por meio de um provedor de segurança terceirizado. Para saber mais sobre essa funcionalidade, confira Provedores de segurança confiáveis.
  • Você pode configurar uma de suas ramificações (VPN site a site, circuito do ExpressRoute) para anunciar a rota 0.0.0.0/0 para a WAN Virtual.

Depois de configurar um dos quatro métodos acima, verifique se o sinalizador EnableInternetSecurity está ativado para o gateway de VPN ponto a site. Esse sinalizador deve ser definido como true para que seus clientes sejam configurados corretamente para o túnel forçado.

Para ativar o sinalizador EnableInternetSecurity, use o comando do PowerShell a seguir, substituindo os valores apropriados para seu ambiente.

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

Baixar o perfil de VPN ponto a site

Para baixar o perfil de VPN ponto a site, confira Perfis globais e de hub. As informações no arquivo zip baixado do portal do Azure são essenciais para configurar corretamente seus clientes.

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

As etapas de configuração do túnel forçado são diferentes de acordo com o sistema operacional do dispositivo do usuário final.

Clientes do Windows

Observação

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

  1. A validação da versão do cliente VPN do Azure é compatível com o túnel forçado. Para isso, clique nos três pontos na parte inferior do cliente VPN do Azure e em Ajuda. Como alternativa, use o atalho do teclado Ctrl-H para acessar a Ajuda. O número da versão pode ser encontrado na parte superior da tela. Verifique se o número da versão é 2:1900:39.0 ou posterior.

  2. Abra o arquivo zip baixado da seção anterior. Você deve ver uma pasta AzureVPN. Acesse-a e abra azurevpnconfig.xml na sua ferramenta de edição de XML preferencial.

  3. Em azureconfig.xml, há um campo versão. Se o número entre as marcas 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 saber como importar um perfil, confira Instruções de importação de cliente VPN do Azure.

  5. Estabeleça conexão com a conexão recém-adicionada. Agora você está forçando pelo túnel todo o tráfego para a WAN Virtual do Azure.

Clientes do macOS

Depois que um cliente macOS aprende a rota padrão do Azure, o túnel forçado é configurado automaticamente no dispositivo cliente. Não há etapas extras a seguir. Para saber como usar o cliente VPN do Azure para macOS a fim de se conectar ao gateway de VPN ponto a site da WAN Virtual, confira o Guia de Configuração do macOS.

Configurando o túnel forçado para clientes IKEv2

Para clientes IKEv2, você não pode usar diretamente os perfis executáveis baixados do portal do Azure. Para configurar corretamente o cliente, você precisará executar um script do PowerShell ou distribuir o perfil VPN por meio do Intune.

Com base no método de autenticação configurado no gateway de VPN ponto a site, use um arquivo de configuração EAP diferente. Os arquivos de configuração de EAP de exemplo são fornecidos abaixo.

IKEv2 com autenticação de certificado de usuário

Para usar certificados de usuário para autenticar usuários remotos, use o script de exemplo do PowerShell abaixo. Para importar corretamente o conteúdo dos arquivos XML VpnSettings pnSettings e EAP para o PowerShell, acesse o diretório apropriado antes de executar o comando Get-Content do 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 

O exemplo a seguir mostra um arquivo XML EAP para a autenticação baseada em certificado de usuário. Substitua o campo IssuerHash pela impressão digital do Certificado Raiz a fim de garantir que o dispositivo cliente selecione o certificado correto a ser apresentado ao 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 do computador

Para usar certificados de computador para autenticar usuários remotos, use o script de exemplo do PowerShell abaixo. Para importar corretamente o conteúdo dos arquivos XML VpnSettings pnSettings e EAP para o PowerShell, acesse o diretório apropriado antes de executar o comando Get-Content do 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 com autenticação de servidor RADIUS com nome de usuário e senha (EAP-MSCHAPv2)

Para usar a autenticação RADIUS baseada em nome de usuário e em senha (EAP-MASCHAPv2) a fim de autenticar usuários remotos, use o script de exemplo do PowerShell abaixo. Para importar corretamente o conteúdo dos arquivos XML VpnSettings pnSettings e EAP para o PowerShell, acesse o diretório apropriado antes de executar o comando Get-Content do 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 

Um exemplo de arquivo XML EAP é 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 usuário (EAP-TLS)

Para usar a autenticação RADIUS baseada em certificado (EAP-TLS) a fim de autenticar usuários remotos, use o script do PowerShell de exemplo abaixo. Para importar o conteúdo dos arquivos XML VpnSettings pnSettings e EAP para o PowerShell, acesse o diretório apropriado antes de executar o comando Get-Content do 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 

Veja abaixo um arquivo XML EAP de exemplo. Altere o campo TrustedRootCA para a impressão digital do certificado da Autoridade de Certificação e o IssuerHash para ser a impressão digital do Certificado 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 CERTIFICATE THUMBPRINT  </IssuerHash>
                        </CAHashList>
                    </FilteringInfo>
                </TLSExtensions>
            </EapType>
        </Eap>
    </Config>
</EapHostConfig>

Próximas etapas

Para obter mais informações sobre a WAN Virtual, veja as Perguntas frequentes.