Configuración de una tunelización forzada para una VPN de punto a sitio en Virtual WAN
La tunelización forzada permite enviar todo el tráfico (incluido el tráfico enlazado a Internet) desde usuarios remotos a Azure. En Virtual WAN, la tunelización forzada para los usuarios remotos de VPN de punto a sitio significa que la ruta predeterminada 0.0.0.0/0 se anuncia a los usuarios de VPN remotos.
Creación de un centro de conectividad de Virtual WAN
En los pasos de este artículo se da por hecho que ya ha implementado una WAN virtual con uno o más centros.
Para crear una nueva WAN virtual y un nuevo centro, siga los pasos que se describen en los siguientes artículos:
Configuración de una VPN de punto a sitio
En los pasos que se describen en este artículo también se supone que ya ha implementado una puerta de enlace de VPN de punto a sitio en el centro de Virtual WAN. Ademas, se asume que ha creado perfiles de VPN de punto a sitio para asignar a la puerta de enlace.
Para crear la puerta de enlace de VPN de punto a sitio y perfiles relacionados, consulte Creación de una puerta de enlace de VPN de punto a sitio.
Anuncio de rutas predeterminadas a los clientes
Hay un par de maneras de configurar la tunelización forzada y anunciar la ruta predeterminada (0.0.0.0/0) a los clientes VPN de usuario remoto conectados a Virtual WAN.
- Puede especificar una ruta estática 0.0.0.0/0 en defaultRouteTable con el próximo salto Virtual Network Connection. Esto forzará que todo el tráfico enlazado a Internet se envíe a una aplicación virtual de red implementada en esa Virtual Network de radio. Para obtener instrucciones más detalladas, considere el flujo de trabajo alternativo descrito en Enrutamiento a través de NVA.
- Puede usar Azure Firewall Manager para configurar Virtual WAN para enviar todo el tráfico enlazado a Internet a través de Azure Firewall implementado en el centro de Virtual WAN. Para obtener información sobre los pasos de configuración y acceder a un tutorial, consulte la documentación de Azure Firewall Manager Protección de centros virtuales. Como alternativa, también se puede configurar mediante una directiva de enrutamiento de tráfico de Internet. Para obtener más información, consulte Intenciones y directivas de enrutamiento.
- Puede usar Firewall Manager para enviar tráfico de Internet a través de un proveedor de seguridad de terceros. Para obtener más información sobre esta funcionalidad, consulte Proveedores de seguridad de confianza.
- Puede configurar una de las ramas (VPN de sitio a sitio, circuito ExpressRoute) para anunciar la ruta 0.0.0.0/0 a Virtual WAN.
Después de configurar uno de los cuatro métodos anteriores, asegúrese de que la marca EnableInternetSecurity está activada para la puerta de enlace de VPN de punto a sitio. Esta marca debe establecerse en "true" para que los clientes estén configurados correctamente para la tunelización forzada.
Para activar la marca EnableInternetSecurity, use el siguiente comando de PowerShell, sustituyendo los valores adecuados para su entorno.
Update-AzP2sVpnGateway -ResourceGroupName "sampleRG" -Name "p2sgwsamplename" -EnableInternetSecurityFlag
Descarga del perfil de VPN de punto a sitio
Para descargar el perfil de VPN de punto a sitio, consulte perfiles globales y de centro de conectividad. La información del archivo ZIP descargado de Azure Portal es fundamental para configurar correctamente a los clientes.
Configuración de la tunelización forzada para clientes VPN de Azure (OpenVPN)
Los pasos para configurar la tunelización forzada son diferentes, en función del sistema operativo del dispositivo del usuario final.
Clientes Windows
Nota
En el caso de los clientes Windows, la tunelización forzada con el cliente VPN de Azure solo está disponible con la versión de software 2:1900:39.0 o versiones posteriores.
Valide que la versión del cliente VPN de Azure sea compatible con la tunelización forzada. Para ello, haga clic en los tres puntos situados en la parte inferior del cliente VPN de Azure y haga clic en Ayuda. Como alternativa, el método abreviado del teclado para navegar a Ayuda es Ctrl+H. El número de versión se puede encontrar hacia la parte superior de la pantalla. Asegúrese de que el número de versión es 2:1900:39.0 o posterior.
Abra el archivo ZIP descargado de la sección anterior. Debería ver una carpeta denominada AzureVPN. Abra la carpeta y, luego, abraazurevpnconfig.xml en la herramienta de edición XML que prefiera.
En azureconfig.xml, hay un campo denominado versión. Si el número entre las etiquetas de versión es 1, cambie el número de versión a 2.
<version>2</version>
Importe el perfil al cliente VPN de Azure. Para obtener más información sobre cómo importar un perfil, consulte Instrucciones de importación de cliente VPN de Azure.
Conéctese a la conexión recién agregada. Ahora está tunelizando de forma forzada todo el tráfico a Azure Virtual WAN.
Clientes macOS
Una vez que un cliente macOS aprende la ruta predeterminada de Azure, la tunelización forzada se configura automáticamente en el dispositivo cliente. No hay más pasos que realizar. Para obtener instrucciones sobre cómo usar el cliente VPN de Azure de macOS para conectarse a la puerta de enlace de VPN de punto a sitio de Virtual WAN, consulte la Guía de configuración de macOS.
Configuración de la tunelización forzada para clientes IKEv2
En el caso de los clientes IKEv2, no puede usar directamente los perfiles ejecutables descargados de Azure Portal. Para configurar correctamente el cliente, deberá ejecutar un script de PowerShell o distribuir el perfil de VPN a través de Intune.
En función del método de autenticación configurado en la puerta de enlace de VPN de punto a sitio, use otro archivo de configuración de EAP. A continuación, se proporcionan archivos de configuración de EAP de ejemplo.
IKEv2 con autenticación de certificado de usuario
Para usar certificados de usuario para autenticar usuarios remotos, use el siguiente script de PowerShell de ejemplo. Para importar correctamente el contenido de los archivos XML de VpnSettings y EAP a PowerShell, vaya al directorio adecuado antes de ejecutar el comando Get-Content de 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
En el ejemplo siguiente se muestra un archivo XML de EAP para la autenticación basada en certificados de usuario. Reemplace el campo IssuerHash por la huella digital del certificado raíz para asegurarse de que el dispositivo cliente selecciona el certificado correcto que se va a presentar al servidor VPN para la autenticación.
<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 autenticación de certificado de máquina
Para usar certificados de máquina para autenticar usuarios remotos, use el siguiente script de PowerShell de ejemplo. Para importar correctamente el contenido de los archivos XML de VpnSettings y EAP a PowerShell, vaya al directorio adecuado antes de ejecutar el comando Get-Content de 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 autenticación de servidor RADIUS con nombre de usuario y contraseña (EAP-MSCHAPv2)
Para usar la autenticación RADIUS basada en nombre de usuario y contraseña (EAP-MASCHAPv2) para autenticar usuarios remotos, use el siguiente script de PowerShell de ejemplo. Para importar correctamente el contenido de los archivos XML de VpnSettings y EAP a PowerShell, vaya al directorio adecuado antes de ejecutar el comando Get-Content de 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
A continuación, se muestra un archivo XML de EAP de ejemplo.
<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 autenticación de servidor RADIUS con certificados de usuario (EAP-TLS)
Para usar la autenticación RADIUS basada en certificados (EAP-TLS) para autenticar usuarios remotos, use el siguiente script de PowerShell de ejemplo. Observe que para importar correctamente el contenido de los archivos XML de VpnSettings y EAP a PowerShell, deberá ir al directorio adecuado antes de ejecutar el comando Get-Content de 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
A continuación se muestra un archivo XML de EAP de ejemplo. Cambie el campo TrustedRootCA por la huella digital del certificado de la entidad de certificación y issuerHash para que sea la huella digital del certificado raíz.
<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>
Pasos siguientes
Para más información sobre Virtual WAN, consulte las preguntas más frecuentes.