Conexión de puertas de enlace Azure VPN Gateway a varios dispositivos VPN locales basados en directivas con PowerShellConnect Azure VPN gateways to multiple on-premises policy-based VPN devices using PowerShell

Este artículo le ayuda a configurar una puerta de enlace de VPN basada en rutas de Azure para conectarse a varios dispositivos VPN locales basados en directivas al aprovechar las directivas IPsec/IKE personalizadas en las conexiones VPN de sitio a sitio.This article helps you configure an Azure route-based VPN gateway to connect to multiple on-premises policy-based VPN devices leveraging custom IPsec/IKE policies on S2S VPN connections.

Nota

Este artículo se ha actualizado para usar el nuevo módulo Az de Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Aún puede usar el módulo de AzureRM que continuará recibiendo correcciones de errores hasta diciembre de 2020 como mínimo.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Para más información acerca del nuevo módulo Az y la compatibilidad con AzureRM, consulte Introducing the new Azure PowerShell Az module (Presentación del nuevo módulo Az de Azure PowerShell).To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Para obtener instrucciones sobre la instalación del módulo Az, consulte Instalación de Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Acerca de las puertas de enlace de VPN basadas en directivas y en rutasAbout policy-based and route-based VPN gateways

Los dispositivos VPN basados en directivas frente a los basados en rutas se diferencian en la forma en la que se establecen los selectores de tráfico IPsec en una conexión:Policy- vs. route-based VPN devices differ in how the IPsec traffic selectors are set on a connection:

  • Los dispositivos VPN basados en directivas usan las combinaciones de prefijos de ambas redes para definir la forma en la que se cifra/descifra el tráfico a través de túneles IPsec.Policy-based VPN devices use the combinations of prefixes from both networks to define how traffic is encrypted/decrypted through IPsec tunnels. Normalmente se basa en dispositivos de firewall que realizan el filtrado de paquetes.It is typically built on firewall devices that perform packet filtering. El cifrado y descifrado de túneles IPsec se agregan al motor de procesamiento y al filtrado de paquetes.IPsec tunnel encryption and decryption are added to the packet filtering and processing engine.
  • Los dispositivos VPN basados en rutas usan selectores de tráfico universales (caracteres comodín) y permiten a las tablas de reenvío/enrutamiento dirigir el tráfico a distintos túneles IPsec.Route-based VPN devices use any-to-any (wildcard) traffic selectors, and let routing/forwarding tables direct traffic to different IPsec tunnels. Normalmente se basa en plataformas de enrutador donde cada túnel IPsec se modela como una interfaz de red o VTI (interfaz de túnel virtual).It is typically built on router platforms where each IPsec tunnel is modeled as a network interface or VTI (virtual tunnel interface).

Los diagramas siguientes resaltan los dos modelos:The following diagrams highlight the two models:

Ejemplo de VPN basada en directivasPolicy-based VPN example

basada en directivas

Ejemplo de VPN basada en rutasRoute-based VPN example

basada en rutas

Compatibilidad de Azure con VPN basada en directivasAzure support for policy-based VPN

Actualmente, Azure admite los dos modos de puertas de enlace de VPN: puertas de enlace de VPN basadas en directivas y puertas de enlace de VPN basadas en rutas.Currently, Azure supports both modes of VPN gateways: route-based VPN gateways and policy-based VPN gateways. Se crean en distintas plataformas internas, lo que da lugar a diferentes especificaciones:They are built on different internal platforms, which result in different specifications:

VPN Gateway PolicyBasedPolicyBased VPN Gateway VPN Gateway RouteBasedRouteBased VPN Gateway VPN Gateway RouteBasedRouteBased VPN Gateway
SKU de puerta de enlace de AzureAzure Gateway SKU BásicaBasic BásicaBasic Standard, HighPerformance, VpnGw1, VpnGw2, VpnGw3Standard, HighPerformance, VpnGw1, VpnGw2, VpnGw3
Versión de IKEIKE version IKEv1IKEv1 IKEv2IKEv2 IKEv1 e IKEv2IKEv1 and IKEv2
Máx. de conexiones de sitio a sitioMax. S2S connections 11 1010 Estándar: 10Standard: 10
Otras SKU: 30Other SKUs: 30

Con la directiva IPsec/IKE personalizada, ahora puede configurar puertas de enlace Azure VPN Gateway basadas en rutas para usar selectores de tráfico basados en prefijo con la opción "PolicyBasedTrafficSelectors" para conectarse a dispositivos VPN locales basados en directivas.With the custom IPsec/IKE policy, you can now configure Azure route-based VPN gateways to use prefix-based traffic selectors with option "PolicyBasedTrafficSelectors", to connect to on-premises policy-based VPN devices. Esta capacidad le permite conectarse desde una red virtual de Azure y una puerta de enlace Azure VPN Gateway a varios dispositivos VPN/firewall locales basados en directivas y quitar el límite de conexión único de las actuales puertas de enlace Azure VPN Gateway basadas en directivas.This capability allows you to connect from an Azure virtual network and VPN gateway to multiple on-premises policy-based VPN/firewall devices, removing the single connection limit from the current Azure policy-based VPN gateways.

Importante

  1. Para habilitar esta conectividad, los dispositivos VPN locales basados en directivas deben admitir IKEv2 para conectarse a las puertas de enlace Azure VPN Gateway basadas en rutas.To enable this connectivity, your on-premises policy-based VPN devices must support IKEv2 to connect to the Azure route-based VPN gateways. Compruebe las especificaciones del dispositivo VPN.Check your VPN device specifications.
  2. Las redes locales que se conectan a través de dispositivos VPN basados en directivas con este mecanismo solo pueden conectarse a la red virtual de Azure; no se permite el tránsito a otras redes locales o redes virtuales a través de la misma puerta de enlace de VPN de Azure.The on-premises networks connecting through policy-based VPN devices with this mechanism can only connect to the Azure virtual network; they cannot transit to other on-premises networks or virtual networks via the same Azure VPN gateway.
  3. La opción de configuración forma parte de la directiva de conexión IPsec/IKE personalizada.The configuration option is part of the custom IPsec/IKE connection policy. Si habilita la opción de selector de tráfico basado en directivas, debe especificar la directiva completa (vigencias de SA, puntos clave, algoritmos de integridad y cifrado IPsec/IKE).If you enable the policy-based traffic selector option, you must specify the complete policy (IPsec/IKE encryption and integrity algorithms, key strengths, and SA lifetimes).

El diagrama siguiente muestra por qué el enrutamiento del tránsito a través de la puerta de enlace de VPN de Azure no funciona con la opción basada en directivas:The following diagram shows why transit routing via Azure VPN gateway doesn't work with the policy-based option:

tránsito basado en directivas

Como se muestra en el diagrama, la puerta de enlace de VPN de Azure tiene selectores de tráfico desde la red virtual a cada prefijo de red local, pero no a los prefijos de conexión cruzada.As shown in the diagram, the Azure VPN gateway has traffic selectors from the virtual network to each of the on-premises network prefixes, but not the cross-connection prefixes. Por ejemplo, los sitios 2, 3 y 4 locales pueden comunicarse con VNet1, pero no se pueden conectar entre sí a través de la puerta de enlace de VPN de Azure.For example, on-premises site 2, site 3, and site 4 can each communicate to VNet1 respectively, but cannot connect via the Azure VPN gateway to each other. El diagrama muestra los selectores de tráfico de conexión cruzada que no están disponibles en la puerta de enlace Azure VPN Gateway en esta configuración.The diagram shows the cross-connect traffic selectors that are not available in the Azure VPN gateway under this configuration.

Configuración de los selectores de tráfico basados en directivas en una conexiónConfigure policy-based traffic selectors on a connection

Las instrucciones de este artículo siguen el mismo ejemplo de Configurar una directiva de IPsec o IKE para conexiones VPN de sitio a sitio o de red virtual a red virtual para establecer una conexión VPN de sitio a sitio.The instructions in this article follow the same example as described in Configure IPsec/IKE policy for S2S or VNet-to-VNet connections to establish a S2S VPN connection. Se muestra en el diagrama siguiente:This is shown in the following diagram:

s2s-policy

El flujo de trabajo para habilitar esta conectividad:The workflow to enable this connectivity:

  1. Cree la red virtual, la puerta de enlace VPN y la puerta de enlace de red local para la conexión entre locales.Create the virtual network, VPN gateway, and local network gateway for your cross-premises connection
  2. Cree una directiva IPsec/IKE.Create an IPsec/IKE policy
  3. Aplique la directiva cuando se cree una conexión de sitio a sitio o de red virtual a red virtual, y habilite los selectores de tráfico basados en directivas en la conexión.Apply the policy when you create a S2S or VNet-to-VNet connection, and enable the policy-based traffic selectors on the connection
  4. Si ya se ha creado la conexión, puede aplicar la directiva a una conexión existente o actualizarla.If the connection is already created, you can apply or update the policy to an existing connection

Antes de empezarBefore you begin

Compruebe que tiene una suscripción a Azure.Verify that you have an Azure subscription. Si todavía no la tiene, puede activar sus ventajas como suscriptor de MSDN o registrarse para obtener una cuenta gratuita.If you don't already have an Azure subscription, you can activate your MSDN subscriber benefits or sign up for a free account.

En este artículo se usan cmdlets de PowerShell.This article uses PowerShell cmdlets. Para ejecutar los cmdlets, puede usar Azure Cloud Shell, un entorno de shell interactivo hospedado en Azure y que se utiliza a través del explorador.To run the cmdlets, you can use Azure Cloud Shell, an interactive shell environment hosted in Azure and used through the browser. Azure Cloud Shell viene con los cmdlets de Azure PowerShell preinstalados.Azure Cloud Shell comes with the Azure PowerShell cmdlets pre-installed.

Para ejecutar cualquier código contenido en este artículo en Azure Cloud Shell, abra una sesión de Cloud Shell, utilice el botón Copiar en un bloque de código para copiar el código y péguelo en la sesión de Cloud Shell con Ctrl+Mayús+V en Windows y Linux, o Cmd+Mayús+V en macOS.To run any code contained in this article on Azure Cloud Shell, open a Cloud Shell session, use the Copy button on a code block to copy the code, and paste it into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS. El texto pegado no se ejecuta automáticamente, así que presione ENTRAR para ejecutar el código.Pasted text is not automatically executed, so press Enter to run code.

Puede iniciar Azure Cloud Shell con:You can launch Azure Cloud Shell with:

Seleccione Probarlo en la esquina superior derecha de un bloque de código.Select Try It in the upper-right corner of a code block. Esto no copia automáticamente el texto en Cloud Shell.This doesn't automatically copy text to Cloud Shell. Ejemplo de Probarlo para Azure Cloud Shell
Abra shell.azure.com en el explorador.Open shell.azure.com in your browser. Botón Iniciar Cloud ShellLaunch Azure Cloud Shell button
Seleccione el botón Cloud Shell en el menú de la esquina superior derecha de Azure Portal.Select the Cloud Shell button on the menu in the upper-right corner of the Azure portal. Botón Cloud Shell en Azure Portal

Ejecución de PowerShell localmenteRunning PowerShell locally

También puede instalar y ejecutar los cmdlets de Azure PowerShell localmente en el equipo.You can also install and run the Azure PowerShell cmdlets locally on your computer. Los cmdlets de PowerShell se actualizan con frecuencia.PowerShell cmdlets are updated frequently. Si no está ejecutando la última versión, los valores especificados en las instrucciones pueden dar lugar a errores.If you are not running the latest version, the values specified in the instructions may fail. Para buscar las versiones de Azure PowerShell instaladas en el equipo, use el cmdlet Get-Module -ListAvailable Az.To find the versions of Azure PowerShell installed on your computer, use the Get-Module -ListAvailable Az cmdlet. Para instalar la actualización, consulte Instalación del módulo de Azure PowerShell.To install or update, see Install the Azure PowerShell module.

Habilitación de los selectores de tráfico basados en directivas en una conexiónEnable policy-based traffic selectors on a connection

Asegúrese de haber completado la parte 3 del artículo Configurar una directiva de IPsec o IKE para esta sección.Make sure you have completed Part 3 of the Configure IPsec/IKE policy article for this section. El ejemplo siguiente usa los mismos parámetros y pasos:The following example uses the same parameters and steps:

Paso 1: crear la red virtual, la puerta de enlace de VPN y la puerta de enlace de red localStep 1 - Create the virtual network, VPN gateway, and local network gateway

1. Conexión a la suscripción y declaración de variables1. Connect to your subscription and declare your variables

Abra la consola de PowerShell con privilegios elevados.Open your PowerShell console with elevated privileges.

Si ejecuta Azure PowerShell localmente, conéctese a la cuenta de Azure.If you are running Azure PowerShell locally, connect to your Azure account. El cmdlet Connect-AzAccount le pide las credenciales.The Connect-AzAccount cmdlet prompts you for credentials. Después de la autenticación, descarga la configuración de la cuenta para que esté disponible en Azure PowerShell.After authenticating, it downloads your account settings so that they are available to Azure PowerShell. Si no ejecuta PowerShell localmente y, en su lugar, usa Azure Cloud Shell 'Try it' en el explorador web, omita este primer paso.If you are not running PowerShell locally and are instead using the Azure Cloud Shell 'Try it' in the browser, skip this first step. Se conectará a la cuenta de Azure automáticamente.You will connect to your Azure account automatically.

Connect-AzAccount

Si tiene más de una suscripción, obtenga una lista de las suscripciones de Azure.If you have more than one subscription, get a list of your Azure subscriptions.

Get-AzSubscription

Especifique la suscripción que desea usar.Specify the subscription that you want to use.

Select-AzSubscription -SubscriptionName "Name of subscription"

Declare las variables.Declare your variables. Para este ejercicio, usamos las siguientes variables:For this exercise, we use the following variables:

$Sub1          = "<YourSubscriptionName>"
$RG1           = "TestPolicyRG1"
$Location1     = "East US 2"
$VNetName1     = "TestVNet1"
$FESubName1    = "FrontEnd"
$BESubName1    = "Backend"
$GWSubName1    = "GatewaySubnet"
$VNetPrefix11  = "10.11.0.0/16"
$VNetPrefix12  = "10.12.0.0/16"
$FESubPrefix1  = "10.11.0.0/24"
$BESubPrefix1  = "10.12.0.0/24"
$GWSubPrefix1  = "10.12.255.0/27"
$DNS1          = "8.8.8.8"
$GWName1       = "VNet1GW"
$GW1IPName1    = "VNet1GWIP1"
$GW1IPconf1    = "gw1ipconf1"
$Connection16  = "VNet1toSite6"

$LNGName6      = "Site6"
$LNGPrefix61   = "10.61.0.0/16"
$LNGPrefix62   = "10.62.0.0/16"
$LNGIP6        = "131.107.72.22"

2. Creación de la red virtual, la puerta de enlace de VPN y la puerta de enlace de red local2. Create the virtual network, VPN gateway, and local network gateway

Cree un grupo de recursos.Create a resource group.

New-AzResourceGroup -Name $RG1 -Location $Location1

Use el ejemplo siguiente para crear la red virtual TestVNet1, con tres subredes y la puerta de enlace de VPN.Use the following example to create the virtual network TestVNet1 with three subnets, and the VPN gateway. Si desea reemplazar los valores, es importante que siempre asigne el nombre GatewaySubnet a la subred de la puerta de enlace.If you want to substitute values, it's important that you always name your gateway subnet specifically 'GatewaySubnet'. Si usa otro, se produce un error al crear la puerta de enlace.If you name it something else, your gateway creation fails.

$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1
$besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1
$gwsub1 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName1 -AddressPrefix $GWSubPrefix1

New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1

$gw1pip1    = New-AzPublicIpAddress -Name $GW1IPName1 -ResourceGroupName $RG1 -Location $Location1 -AllocationMethod Dynamic
$vnet1      = Get-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1
$subnet1    = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet1
$gw1ipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GW1IPconf1 -Subnet $subnet1 -PublicIpAddress $gw1pip1

New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 -Location $Location1 -IpConfigurations $gw1ipconf1 -GatewayType Vpn -VpnType RouteBased -GatewaySku HighPerformance

New-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1 -Location $Location1 -GatewayIpAddress $LNGIP6 -AddressPrefix $LNGPrefix61,$LNGPrefix62

Paso 2: Creación de una conexión VPN de sitio a sitio con una directiva IPsec/IKEStep 2 - Create a S2S VPN connection with an IPsec/IKE policy

1. Cree una directiva IPsec/IKE.1. Create an IPsec/IKE policy

Importante

Debe crear una directiva IPsec/IKE para habilitar la opción "UsePolicyBasedTrafficSelectors" en la conexión.You need to create an IPsec/IKE policy in order to enable "UsePolicyBasedTrafficSelectors" option on the connection.

El ejemplo siguiente crea una directiva IPsec/IKE con estos algoritmos y parámetros:The following example creates an IPsec/IKE policy with these algorithms and parameters:

  • IKEv2: AES256, SHA384 y DHGroup24IKEv2: AES256, SHA384, DHGroup24
  • IPsec: AES256, SHA256, sin PFS, 14 400 segundos de vigencia de SA y 102 400 000 KBIPsec: AES256, SHA256, PFS None, SA Lifetime 14400 seconds & 102400000KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES256 -IkeIntegrity SHA384 -DhGroup DHGroup24 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup None -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000

2. Creación de una conexión VPN de sitio a sitio con selectores de tráfico basados en directivas y directiva IPsec/IKE2. Create the S2S VPN connection with policy-based traffic selectors and IPsec/IKE policy

Cree una conexión VPN de sitio a sitio y aplique la directiva IPsec/IKE creada en el paso anterior.Create an S2S VPN connection and apply the IPsec/IKE policy created in the previous step. Tenga en cuenta el parámetro adicional "-UsePolicyBasedTrafficSelectors $True", que habilita los selectores de tráfico basados en directivas en la conexión.Be aware of the additional parameter "-UsePolicyBasedTrafficSelectors $True" which enables policy-based traffic selectors on the connection.

$vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1  -ResourceGroupName $RG1
$lng6 = Get-AzLocalNetworkGateway  -Name $LNGName6 -ResourceGroupName $RG1

New-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -LocalNetworkGateway2 $lng6 -Location $Location1 -ConnectionType IPsec -UsePolicyBasedTrafficSelectors $True -IpsecPolicies $ipsecpolicy6 -SharedKey 'AzureA1b2C3'

Después de completar los pasos, la conexión VPN de sitio a sitio usará la directiva IPsec/IKE definida y habilitará los selectores de tráfico basados en directivas en la conexión.After completing the steps, the S2S VPN connection will use the IPsec/IKE policy defined, and enable policy-based traffic selectors on the connection. Puede repetir los mismos pasos para agregar más conexiones a los dispositivos VPN locales adicionales basados en directivas desde la misma puerta de enlace Azure VPN Gateway.You can repeat the same steps to add more connections to additional on-premises policy-based VPN devices from the same Azure VPN gateway.

Actualización de los selectores de tráfico basados en directivas para una conexiónUpdate policy-based traffic selectors for a connection

La última sección muestra cómo actualizar la opción de selectores de tráfico basados en directivas para una conexión VPN de sitio a sitio existente.The last section shows you how to update the policy-based traffic selectors option for an existing S2S VPN connection.

1. Obtención de la conexión1. Get the connection

Obtenga el recurso de conexión.Get the connection resource.

$RG1          = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6  = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1

2. Comprobación de la opción de selectores de tráfico basados en directivas2. Check the policy-based traffic selectors option

La siguiente línea muestra si se usan los selectores de tráfico basados en directivas para la conexión:The following line shows whether the policy-based traffic selectors are used for the connection:

$connection6.UsePolicyBasedTrafficSelectors

Si la línea devuelve "True", los selectores de tráfico basados en directivas están configurados en la conexión; en caso contrario, devuelve "False".If the line returns "True", then policy-based traffic selectors are configured on the connection; otherwise it returns "False."

3. Habilitar/Deshabilitar los selectores de tráfico basados en directivas en una conexión3. Enable/Disable the policy-based traffic selectors on a connection

Una vez que obtenga el recurso de conexión, puede habilitar o deshabilitar la opción.Once you obtain the connection resource, you can enable or disable the option.

Para habilitar UsePolicyBasedTrafficSelectorsTo Enable UsePolicyBasedTrafficSelectors

En el ejemplo siguiente se habilita la opción de selectores de tráfico basados en directivas y se deja sin modificar la directiva IPsec/IKE:The following example enables the policy-based traffic selectors option, but leaves the IPsec/IKE policy unchanged:

$RG1          = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6  = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1

Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -UsePolicyBasedTrafficSelectors $True

Para deshabilitar UsePolicyBasedTrafficSelectorsTo Disable UsePolicyBasedTrafficSelectors

En el ejemplo siguiente se deshabilita la opción de selectores de tráfico basados en directivas, pero se deja sin modificar la directiva IPsec/IKE:The following example disables the policy-based traffic selectors option, but leaves the IPsec/IKE policy unchanged:

$RG1          = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6  = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1

Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -UsePolicyBasedTrafficSelectors $False

Pasos siguientesNext steps

Una vez completada la conexión, puede agregar máquinas virtuales a las redes virtuales.Once your connection is complete, you can add virtual machines to your virtual networks. Consulte Creación de una máquina virtual que ejecuta Windows en el Portal de Azure para ver los pasos.See Create a Virtual Machine for steps.

Consulte también Configure IPsec/IKE policy for S2S VPN or VNet-to-VNet connections (Configuración de la directiva IPsec/IKE para conexiones VPN de sitio a sitio o de red virtual a red virtual) para obtener más información sobre las directivas IPsec/IKE personalizadas.Also review Configure IPsec/IKE policy for S2S VPN or VNet-to-VNet connections for more details on custom IPsec/IKE policies.