Creación de una puerta de enlace de aplicaciones con redirección de HTTP a HTTPS mediante Azure Portal
Puede usar Azure Portal para crear una puerta de enlace de aplicaciones con un certificado para la terminación TLS. Para redirigir el tráfico HTTP al puerto HTTPS en la puerta de enlace de aplicaciones se usa una regla de enrutamiento. En este ejemplo, también crea un conjunto de escalado de máquinas virtuales para el grupo de back-end de la puerta de enlace de aplicaciones que contiene dos instancias de máquina virtual.
En este artículo aprenderá a:
- Crear un certificado autofirmado
- Configurar una red
- Crear una puerta de enlace de aplicaciones con el certificado
- Adición de un agente de escucha y una regla de redireccionamiento
- Crear un conjunto de escalado de máquinas virtuales con el grupo de servidores back-end predeterminado
Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Nota
Se recomienda usar el módulo Azure Az de PowerShell para interactuar con Azure. Para comenzar, consulte Instalación de Azure PowerShell. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.
En este tutorial se requiere la versión 1.0.0 o posterior del módulo de Azure PowerShell para crear un certificado e instalar IIS. Ejecute Get-Module -ListAvailable Az
para encontrar la versión. Si necesita actualizarla, consulte Instalación del módulo de Azure PowerShell. Para ejecutar los comandos de este tutorial, también debe ejecutar Login-AzAccount
para crear una conexión con Azure.
Crear un certificado autofirmado
Para su uso en producción, debe importar un certificado válido firmado por un proveedor de confianza. Para este tutorial, creará un certificado autofirmado mediante New-SelfSignedCertificate. Puede usar Export-PfxCertificate con la huella digital que se devolvió al exportar un archivo pfx del certificado.
New-SelfSignedCertificate `
-certstorelocation cert:\localmachine\my `
-dnsname www.contoso.com
Debería ver algo parecido a este resultado:
PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\my
Thumbprint Subject
---------- -------
E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630 CN=www.contoso.com
Utilice la huella digital para crear el archivo pfx:
$pwd = ConvertTo-SecureString -String "Azure123456!" -Force -AsPlainText
Export-PfxCertificate `
-cert cert:\localMachine\my\E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630 `
-FilePath c:\appgwcert.pfx `
-Password $pwd
Creación de una puerta de enlace de aplicaciones
Se necesita una red virtual para la comunicación entre los recursos que se crean. En este ejemplo se crean dos subredes: una para la puerta de enlace de aplicaciones y la otra para los servidores back-end. Puede crear una red virtual a la vez que crea la puerta de enlace de aplicaciones.
Inicie sesión en Azure Portal.
Haga clic en Crear un recurso en la esquina superior izquierda de Azure Portal.
Seleccione Redes y Application Gateway en la lista de destacados.
Especifique estos valores para la puerta de enlace de aplicaciones:
myAppGateway: como nombre de la puerta de enlace de aplicaciones.
myResourceGroupAG: como nuevo grupo de recursos.
Acepte los valores predeterminados para las demás opciones y haga clic en Aceptar.
Haga clic en Elegir una red virtual, luego en Crear nueva y, después, especifique estos valores para la red virtual:
myVNet: como nombre de la red virtual.
10.0.0.0/16: como espacio de direcciones de la red virtual.
myAGSubnet: como nombre de subred.
10.0.0.0/24: como espacio de direcciones de la subred.
Haga clic en Aceptar para crear la red virtual y la subred.
En Configuración IP de front-end, asegúrese de que Tipo de dirección IP esté establecido en Pública y que Crear nuevo esté seleccionado. Escriba myAGPublicIPAddress para el nombre. Acepte los valores predeterminados para las demás opciones y haga clic en Aceptar.
En Configuración del agente de escucha, seleccione HTTPS, a continuación, seleccione Seleccionar un archivo, vaya al archivo c:\appgwcert.pfx y seleccione Abrir.
Escriba appgwcert para el nombre del certificado y Azure123456! para la contraseña.
Deje el firewall de aplicaciones web deshabilitado y, a continuación, seleccione Aceptar.
Revise la configuración en la página de resumen y, a continuación, seleccione Aceptar para crear los recursos de red y la puerta de enlace de aplicaciones. La creación de la puerta de enlace de aplicaciones puede tardar varios minutos, espere a que finalice correctamente la implementación antes de pasar a la sección siguiente.
Incorporación de una subred
Seleccione Todos los recursos en el menú izquierdo y, después, seleccione myVNet en la lista de recursos.
Seleccione Subredes y, a continuación, haga clic en Subred.
Escriba myBackendSubnet como nombre de la subred.
Escriba 10.0.2.0/24 para el intervalo de direcciones y, a continuación, seleccione Aceptar.
Adición de un agente de escucha y una regla de redireccionamiento
Adición del agente de escucha
En primer lugar, agregue un agente de escucha llamado myListener para el puerto 80.
- Abra el grupo de recursos myResourceGroupAG y seleccione myAppGateway.
- Seleccione Agentes de escucha y, a continuación, seleccione + Básico.
- Escriba MyListener para el nombre.
- Escriba httpPort para el nombre del nuevo puerto de front-end y 80 para el puerto.
- Asegúrese de que el protocolo está establecido en HTTP y, a continuación, seleccione Aceptar.
Adición de una regla de enrutamiento con una configuración de redireccionamiento
- En myAppGateway, seleccione Reglas y, a continuación, seleccione +Regla de enrutamiento de solicitud.
- En Nombre de la regla, escriba Rule2.
- Asegúrese de que MyListener está seleccionado para el agente de escucha.
- Haga clic en la pestaña Destinos de back-end y seleccione Tipo de destino como Redirección.
- En Tipo de redireccionamiento, seleccione Permanente.
- En Destino del redireccionamiento, seleccione Agente de escucha.
- Asegúrese de que Agente de escucha de destino está establecido en appGatewayHttpListener.
- Para Cadena de consulta de inclusión y Ruta de acceso de inclusión seleccione Sí.
- Seleccione Agregar.
Nota:
appGatewayHttpListener es el nombre del cliente de escucha predeterminado. Para más información, consulte Configuración del agente de escucha de Application Gateway.
Crear un conjunto de escalado de máquinas virtuales
En este ejemplo, creará un conjunto de escalado de máquinas virtuales para proporcionar servidores al grupo de servidores back-end de la puerta de enlace de aplicaciones.
- Seleccione +Crear un recurso en la esquina superior izquierda del portal.
- Seleccione Proceso.
- En el cuadro de búsqueda, escriba conjunto de escalado y presione ENTRAR.
- Seleccione Conjunto de escalado de máquinas virtuales y, a continuación, seleccione Crear.
- En Nombre del conjunto de escalado de máquinas virtuales, escriba myvmss.
- Para la imagen del disco del sistema operativo, asegúrese de que Windows Server 2016 Datacenter está seleccionado.
- Para Grupo de recursos, seleccione myResourceGroupAG.
- En Nombre de usuario, escriba azureuser.
- En Contraseña, escriba Azure123456 y confírmela.
- En Número de instancias, asegúrese de que el valor es 2.
- Para Tamaño de instancia, seleccione D2s_v3.
- En Redes, asegúrese de que Elegir opciones de equilibrio de carga está establecido en Puerta de enlace de aplicaciones.
- Asegúrese de que Puerta de enlace de aplicaciones está establecido en myAppGateway.
- Asegúrese de que Subred está establecido en myBackendSubnet.
- Seleccione Crear.
Asociación del conjunto de escalado con el grupo de back-end correcto
La interfaz de usuario del portal del conjunto de escalado de máquinas virtuales crea un nuevo grupo de back-end para el conjunto de escalado, pero desea asociarlo a appGatewayBackendPool.
- Abra el grupo de recursos myResourceGroupAg.
- Seleccione myAppGateway.
- Seleccione Grupos de back-end.
- Seleccione myAppGatewaymyvmss.
- Seleccione Eliminar todos los destinos del grupo de back-end.
- Seleccione Guardar.
- Una vez completado este proceso, seleccione el grupo de back-end myAppGatewaymyvmss, seleccione Eliminar y, a continuación, seleccione Aceptar para confirmar.
- Seleccione appGatewayBackendPool.
- En Destinos, seleccione VMSS.
- En VMSS, seleccione myvmss.
- En Configuraciones de interfaz de red, seleccione myvmssNic.
- Seleccione Guardar.
Actualización del conjunto de escalado
Por último, debe actualizar el conjunto de escalado con estos cambios.
- Seleccione el conjunto de escalado myvmss.
- En Configuración, seleccione Instancias.
- Seleccione ambas instancias y, a continuación, seleccione Actualizar.
- Seleccione Sí para confirmar.
- Una vez que se complete, vuelva a myAppGateway y seleccione Grupos de back-end. Ahora debería ver que appGatewayBackendPool tiene dos destinos y myAppGatewaymyvmss tiene cero destinos.
- Seleccione myAppGatewaymyvmss y, a continuación, seleccione Eliminar.
- Seleccione Aceptar para confirmar.
Instalación de IIS
Una manera fácil de instalar IIS en el conjunto de escalado es usar PowerShell. Desde el portal, haga clic en el icono Cloud Shell y asegúrese de que PowerShell está seleccionado.
Pegue el código siguiente en la ventana de PowerShell y presione ENTRAR.
$publicSettings = @{ "fileUris" = (,"https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/appgatewayurl.ps1");
"commandToExecute" = "powershell -ExecutionPolicy Unrestricted -File appgatewayurl.ps1" }
$vmss = Get-AzVmss -ResourceGroupName myResourceGroupAG -VMScaleSetName myvmss
Add-AzVmssExtension -VirtualMachineScaleSet $vmss `
-Name "customScript" `
-Publisher "Microsoft.Compute" `
-Type "CustomScriptExtension" `
-TypeHandlerVersion 1.8 `
-Setting $publicSettings
Update-AzVmss `
-ResourceGroupName myResourceGroupAG `
-Name myvmss `
-VirtualMachineScaleSet $vmss
Actualización del conjunto de escalado
Después de cambiar las instancias con IIS, debe actualizar de nuevo el conjunto de escalado con este cambio.
- Seleccione el conjunto de escalado myvmss.
- En Configuración, seleccione Instancias.
- Seleccione ambas instancias y, a continuación, seleccione Actualizar.
- Seleccione Sí para confirmar.
Prueba de la puerta de enlace de aplicaciones
Puede obtener la dirección IP pública de la aplicación en la página de información general de la puerta de enlace de aplicaciones.
Seleccione myAppGateway.
En la página Información general, anote la dirección IP de Dirección IP pública de front-end.
Copie la dirección IP pública y péguela en la barra de direcciones del explorador. Por ejemplo: http://52.170.203.149
Para aceptar la advertencia de seguridad si usó un certificado autofirmado, seleccione Detalles y, a continuación, Acceder a la página web. El sitio web IIS protegido se muestra ahora como en el ejemplo siguiente:
Pasos siguientes
Consulte Creación de una puerta de enlace de aplicaciones con redireccionamiento interno.