Compartir vía


Configuración del servidor P2S VPN Gateway: autenticación RADIUS

Este artículo le ayuda a crear una conexión de punto a sitio (P2S) que usa la autenticación RADIUS. Puede crear esta configuración mediante Azure Portal o PowerShell. Si quiere autenticarse con otro método, consulte los artículos siguientes:

Para obtener más información sobre las conexiones VPN de punto a sitio, consulte Acerca de VPN de P2S.

Este tipo de conexión requiere:

  • Una puerta de enlace de VPN RouteBased.
  • Un servidor RADIUS para controlar la autenticación de los usuarios. El servidor RADIUS se puede implementar localmente o en la red virtual (VNet) de Azure. También puede configurar dos servidores RADIUS para la alta disponibilidad.
  • El paquete de configuración de perfiles de cliente VPN. El paquete de configuración de perfiles de cliente VPN es un paquete que usted genera. Contiene la configuración necesaria para que un cliente VPN se conecte a través de P2S.

Acerca de la autenticación de dominio de Active Directory (AD) para VPN de punto a sitio

La autenticación de dominio de AD permite a los usuarios iniciar sesión en Azure con sus credenciales de dominio de la organización. Requiere un servidor RADIUS que se integre con el servidor de AD. Las organizaciones también pueden usar su implementación RADIUS existente.

El servidor RADIUS puede ser local o encontrarse en la red virtual de Azure. Durante la autenticación, la puerta de enlace de VPN actúa como acceso directo y reenvía los mensajes de autenticación entre el servidor RADIUS y el dispositivo que se conecta. Es importante que la puerta de enlace de VPN se pueda comunicar con el servidor RADIUS. Si el servidor RADIUS se encuentra en el entorno local, se necesita una conexión VPN de sitio a sitio de Azure al sitio local.

Además de con Active Directory, los servidores RADIUS también se integran con otros sistemas de identidad externos. Esta posibilidad abre una gran cantidad de opciones de autenticación para VPN de punto a sitio, incluidas las opciones de autenticación multifactor. Compruebe la documentación del proveedor del servidor RADIUS para obtener la lista de sistemas de identidad con los que se integra.

Diagrama de la conexión de punto a sitio con autenticación de RADIUS.

Importante

No se puede usar una conexión ExpressRoute para conectarse a un servidor RADIUS local.

Antes de comenzar

Compruebe que tiene una suscripción a Azure. Si todavía no la tiene, puede activar sus ventajas como suscriptor de MSDN o registrarse para obtener una cuenta gratuita.

Trabajo con Azure PowerShell

En este artículo se usan cmdlets de PowerShell. Para ejecutar los cmdlets, puede usar Azure Cloud Shell. Cloud Shell es un servicio de shell interactivo gratuito que se puede usar para ejecutar los pasos de este artículo. Tiene las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta.

Para abrir Cloud Shell, seleccione Abrir Cloud Shell en la esquina superior derecha de un bloque de código. También puede abrir Cloud Shell en una pestaña independiente desde https://shell.azure.com/powershell. Seleccione Copiar para copiar los bloques de código, péguelos en Cloud Shell y, a continuación, seleccione la tecla Entrar para ejecutarlos.

También puede instalar y ejecutar los cmdlets de Azure PowerShell localmente en el equipo. Los cmdlets de PowerShell se actualizan con frecuencia. Si no ha instalado la última versión, los valores especificados en las instrucciones pueden dar lugar a errores. Para buscar las versiones de Azure PowerShell instaladas en el equipo, use el cmdlet Get-Module -ListAvailable Az. Para instalar la actualización, vea Instalación del módulo de Azure PowerShell.

Valores de ejemplo

Puede usar los valores del ejemplo para crear un entorno de prueba o hacer referencia a ellos para comprender mejor los ejemplos de este artículo. Puede utilizar los pasos como un tutorial y utilizar los valores sin cambiarlos o modificarlos para reflejar su entorno.

  • Nombre: VNet1
  • Espacio de direcciones: 10.1.0.0/16 y 10.254.0.0/16
    En este ejemplo, se utiliza más de un espacio de direcciones para ilustrar que esta configuración funciona con varios. Sin embargo, para esta configuración no se necesitan varios espacios de direcciones.
  • Nombre de subred: FrontEnd
    • Intervalo de direcciones de subred: 10.1.0.0/24
  • Nombre de subred: BackEnd
    • Intervalo de direcciones de subred: 10.254.1.0/24
  • Nombre de subred: GatewaySubnet
    El nombre de subred GatewaySubnet es obligatorio para que VPN Gateway funcione.
    • Intervalo de direcciones de GatewaySubnet: 10.1.255.0/27
  • Grupo de direcciones de clientes de VPN: 172.16.201.0/24
    Los clientes VPN que se conectan a la red virtual mediante esta conexión de punto a sitio reciben una dirección IP del grupo de direcciones de cliente VPN.
  • Suscripción: si tiene más de una suscripción, compruebe que usa la correcta.
  • Grupo de recursos: TestRG1
  • Ubicación: Este de EE. UU.
  • Servidor DNS: dirección IP del servidor DNS que desea usar para la resolución de nombres en la red virtual (opcional).
  • Nombre de puerta de enlace: Vnet1GW
  • Nombre IP pública: VNet1GWPIP
  • VpnType: RouteBased

Creación del grupo de recursos, la red virtual y la dirección IP pública

Los pasos siguientes sirven para crear un grupo de recursos y una red virtual en el grupo de recursos con tres subredes. Al reemplazar valores, es importante que siempre asigne el nombre GatewaySubnet a la subred de la puerta de enlace. Si usa otro, se produce un error al crear la puerta de enlace.

  1. Cree un grupo de recursos con New-AzResourceGroup.

    New-AzResourceGroup -Name "TestRG1" -Location "EastUS"
    
  2. Cree una red virtual con New-AzVirtualNetwork.

    $vnet = New-AzVirtualNetwork `
    -ResourceGroupName "TestRG1" `
    -Location "EastUS" `
    -Name "VNet1" `
    -AddressPrefix 10.1.0.0/16
    
  3. Cree subredes mediante New-AzVirtualNetworkSubnetConfig con los nombres siguientes: FrontEnd y GatewaySubnet (una subred de puerta de enlace debe denominarse GatewaySubnet).

    $subnetConfigFrontend = Add-AzVirtualNetworkSubnetConfig `
      -Name Frontend `
      -AddressPrefix 10.1.0.0/24 `
      -VirtualNetwork $vnet
    
    $subnetConfigGW = Add-AzVirtualNetworkSubnetConfig `
      -Name GatewaySubnet `
      -AddressPrefix 10.1.255.0/27 `
      -VirtualNetwork $vnet
    
  4. Escriba las configuraciones de subred en la red virtual con Set-AzVirtualNetwork, lo que crea las subredes en la red virtual:

    $vnet | Set-AzVirtualNetwork
    

Solicitar una dirección IP pública

Una puerta de enlace VPN debe tener una dirección IP pública. Primero se solicita el recurso de la dirección IP y, después, se hace referencia a él al crear la puerta de enlace de red virtual. La dirección IP se asigna estáticamente al recurso cuando se crea la puerta de enlace VPN. La única vez que la dirección IP pública cambia es cuando la puerta de enlace se elimina y se vuelve a crear. No cambia cuando se cambia el tamaño, se restablece o se realizan actualizaciones u otras operaciones de mantenimiento interno de una puerta de enlace VPN.

  1. Solicite una dirección IP pública para su puerta de enlace de VPN mediante New-AzPublicIpAddress.

    $gwpip = New-AzPublicIpAddress -Name "GatewayIP" -ResourceGroupName "TestRG1" -Location "EastUS" -AllocationMethod Static -Sku Standard
    
  2. Cree la configuración de la dirección IP de la puerta de enlace mediante New-AzVirtualNetworkGatewayIpConfig. Esta configuración es referida al crear la puerta de enlace de VPN.

    $vnet = Get-AzVirtualNetwork -Name "VNet1" -ResourceGroupName "TestRG1"
    $gwsubnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
    $gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 -SubnetId $gwsubnet.Id -PublicIpAddressId $gwpip.Id
    

Configuración del servidor RADIUS

Antes de crear y configurar la puerta de enlace de red virtual, el servidor RADIUS debe configurarse correctamente para la autenticación.

  1. Si no tiene un servidor RADIUS implementado, implemente uno. Para los pasos de implementación, consulte la guía de instalación que proporciona el proveedor de RADIUS.  
  2. Configure la puerta de enlace de VPN como cliente RADIUS en RADIUS. Al agregar a este cliente RADIUS, especifique la red virtual GatewaySubnet que ha creado.
  3. Una vez configurado el servidor RADIUS, obtenga su dirección IP y el secreto compartido que deben usar los clientes RADIUS para comunicarse con él. Si el servidor RADIUS está en la red virtual de Azure, use la dirección IP de entidad de certificación de la máquina virtual del servidor RADIUS.

El artículo Servidor de directivas de redes (NPS) proporciona instrucciones acerca de cómo configurar un servidor Windows RADIUS (NPS) para la autenticación de dominio de AD.

Creación de la puerta de enlace VPN

En este paso, configurará y creará la puerta de enlace de red virtual para la red virtual. Para más información sobre el tipo de autenticación y de túnel, consulte Especificación del tipo de túnel y autenticación en la versión de Azure Portal de este artículo.

  • El valor de -GatewayType debe ser "Vpn" y el valor de -VpnType debe ser "RouteBased".
  • Una instancia de VPN Gateway puede tardar 45 minutos o más en compilarse, según la SKU de puerta de enlace que seleccione.

En el ejemplo siguiente, usamos la SKU VpnGw2, generación 2. Si ve errores ValidateSet relacionados con el valor de GatewaySku y está ejecutando estos comandos localmente, compruebe que tiene instalada la versión más reciente de los cmdlets de PowerShell. La versión más reciente contiene los nuevos valores validados para las SKU más recientes de la puerta de enlace.

Cree la puerta de enlace de red virtual con el tipo de puerta de enlace "Vpn" mediante New-AzVirtualNetworkGateway.

New-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1" `
-Location "EastUS" -IpConfigurations $gwipconfig -GatewayType Vpn `
-VpnType RouteBased -EnableBgp $false -GatewaySku VpnGw2 -VpnGatewayGeneration "Generation2"

Agregar el servidor RADIUS

  • El valor de -RadiusServer se puede especificar por nombre o por dirección IP. Si especifica el nombre y el servidor reside en el entorno local, es posible que la puerta de enlace de VPN no pueda resolver el nombre. Si es el caso, lo mejor es especificar la dirección IP del servidor.
  • El valor de -RadiusSecret debe coincidir con la configuración del servidor RADIUS.
  • -VpnClientAddressPool es el intervalo del que reciben una dirección IP los clientes al conectarse a la VPN. Use un intervalo de direcciones IP privadas que no se superponga con la ubicación local desde la que se va a conectar ni con la red virtual a la que quiere conectarse. Asegúrese de que tiene configurado un grupo de direcciones lo suficientemente grande.  
  1. Cree una cadena segura para el secreto de RADIUS.

    $Secure_Secret=Read-Host -AsSecureString -Prompt "RadiusSecret"
    
  2. Se le pide que escriba el secreto de RADIUS. Los caracteres que especifique no se mostrarán, sino que se reemplazarán por el carácter "*".

    RadiusSecret:***
    

Agregar los valores del grupo de direcciones de cliente y del servidor RADIUS

En esta sección, agregará el grupo de direcciones de cliente VPN y la información del servidor RADIUS. Hay varias configuraciones posibles. Seleccione el ejemplo que desea configurar.

Configuraciones de SSTP

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol "SSTP" `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

Configuraciones de OpenVPN®

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway -VpnClientRootCertificates @()
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol "OpenVPN" `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

Para configuraciones IKEv2

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol "IKEv2" `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

SSTP + IKEv2

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol @( "SSTP", "IkeV2" ) `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

Especificar dos servidores RADIUS

Para especificar dos servidores RADIUS, use la siguiente sintaxis. Modifique el valor de -VpnClientProtocol según sea necesario.

$radiusServer1 = New-AzRadiusServer -RadiusServerAddress 10.1.0.15 -RadiusServerSecret $radiuspd -RadiusServerScore 30
$radiusServer2 = New-AzRadiusServer -RadiusServerAddress 10.1.0.16 -RadiusServerSecret $radiuspd -RadiusServerScore 1

$radiusServers = @( $radiusServer1, $radiusServer2 )

Set-AzVirtualNetworkGateway -VirtualNetworkGateway $actual -VpnClientAddressPool 201.169.0.0/16 -VpnClientProtocol "IkeV2" -RadiusServerList $radiusServers

Configuración del cliente VPN y conexión

Los paquetes de configuración de perfiles de cliente VPN contienen las opciones que le ayudan a configurar perfiles de cliente VPN para una conexión a la red virtual de Azure.

Para generar un paquete de configuración de cliente VPN y configurar un cliente VPN, consulte uno de los siguientes artículos:

Después de configurar el cliente VPN, conéctese a Azure.

Para comprobar la conexión

  1. Para comprobar que la conexión VPN está activa, abra un símbolo del sistema con privilegios elevados y ejecute ipconfig/all.

  2. Vea los resultados. Observe que la dirección IP que recibió es una de las direcciones dentro del grupo de direcciones de cliente VPN de punto a sitio que especificó en la configuración. Los resultados son similares a los del ejemplo siguiente:

    PPP adapter VNet1:
       Connection-specific DNS Suffix .:
       Description.....................: VNet1
       Physical Address................:
       DHCP Enabled....................: No
       Autoconfiguration Enabled.......: Yes
       IPv4 Address....................: 172.16.201.3(Preferred)
       Subnet Mask.....................: 255.255.255.255
       Default Gateway.................:
       NetBIOS over Tcpip..............: Enabled
    

Para solucionar problemas de conexión de P2S, vea Solución de problemas: conexión de punto a sitio de Azure.

Para conectarse a una máquina virtual

Puedes conectarte a una máquina virtual que esté implementada en la red virtual mediante la creación de una conexión de Escritorio remoto a la máquina virtual. La mejor manera de comprobar inicialmente que puede conectarse a la máquina virtual es hacerlo mediante su dirección IP privada, en lugar del nombre de equipo. Con este método prueba si puede conectarse, no si la resolución de nombres está configurada correctamente.

  1. Busque la dirección IP privada. Para buscar la dirección IP privada de una máquina virtual, examina las propiedades en Azure Portal o usa PowerShell.

    • Azure Portal: Ubica la máquina virtual en Azure Portal. Vea las propiedades de la máquina virtual. Se enumera la dirección IP privada.

    • PowerShell: Utiliza el ejemplo para ver una lista de las máquinas virtuales y las direcciones IP privadas de los grupos de recursos. No es preciso modificar el ejemplo para usarlo.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null
      
      foreach ($Nic in $Nics) {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. Comprueba que está conectado a la red virtual.

  3. Abre Conexión a Escritorio remoto, para lo que debes escribir RDP o Conexión a Escritorio remoto en el cuadro de búsqueda de la barra de tareas. Luego, selecciona Conexión a Escritorio remoto. También puedes abrir Conexión a Escritorio remoto con el comando mstsc de PowerShell.

  4. En Conexión a Escritorio remoto, escriba la dirección IP privada de la máquina virtual. Puedes seleccionar Mostrar opciones para ajustar parámetros adicionales y, después, conectarte.

Si tienes problemas para conectarte a una máquina virtual a través de tu conexión VPN, comprueba los siguientes puntos:

  • Compruebe que la conexión VPN se ha establecido correctamente.
  • Compruebe que se conecta a la dirección IP privada de la máquina virtual.
  • Si puedes conectarte a la máquina virtual mediante la dirección IP privada, pero no el nombre del equipo, comprueba que has configurado el DNS correctamente. Para más información acerca de cómo funciona la resolución de nombres para las máquinas virtuales, consulta Resolución de nombres para las máquinas virtuales e instancias de rol.

Para más información acerca de las conexiones RDP, consulte Solución de problemas de conexiones del Escritorio remoto a una máquina virtual de Azure.

  • Compruebe que el paquete de configuración de cliente de VPN se generó después de que se especificaran las direcciones IP del servidor DNS para la red virtual. Si actualizó las direcciones IP de servidor DNS, genere un nuevo paquete de configuración de cliente de VPN e instálelo.

  • Use "ipconfig" para comprobar la dirección IPv4 asignada al adaptador de Ethernet en el equipo desde el que intenta conectarse. Si la dirección IP está dentro del intervalo de direcciones de la red virtual a la que se va a conectar o dentro del intervalo de direcciones de su VPNClientAddressPool, esto se conoce como un espacio de direcciones superpuesto. Cuando el espacio de direcciones se superpone de esta manera, el tráfico de red no llega a Azure, sino que se mantiene en la red local.

Preguntas más frecuentes

Consulte la sección Autenticación RADIUS de punto a sitio de las preguntas frecuentes.

Pasos siguientes

Una vez completada la conexión, puede agregar máquinas virtuales a las redes virtuales. Consulte Virtual Machines para más información. Para más información acerca de las redes y las máquinas virtuales, consulte Información general sobre las redes de máquina virtual con Linux y Azure.