Un Balanceador de Carga en Amazon Web Services (AWS) con soporte para HTTPS distribuye automáticamente el tráfico cifrado de aplicaciones entre múltiples destinos, como instancias EC2, contenedores y direcciones IP, en una o varias zonas de disponibilidad. Además de los beneficios de alta disponibilidad, escalabilidad y tolerancia a fallos, un balanceador de carga HTTPS ofrece una capa adicional de seguridad al cifrar el tráfico entre los clientes y el balanceador de carga.
A continuación, se detallan los pasos para configurar un Application Load Balancer con soporte para HTTPS en AWS.
Iniciar sesión en la Consola de Administración de AWS
En la consola, buscar y seleccionar EC2.
Verificar que tus instancias EC2 estén en ejecución y correctamente configuradas para manejar solicitudes HTTPS. Asegúrar de que las instancias estén en las subredes correctas y preferiblemente en distintos segmentos
En el panel de navegación izquierdo, selecciona Grupos de Destino. Haz clic en Create target group.
- tipo de destino: Instances.
- nombre del grupo
- Protocolo: Selecciona HTTPS.
- Puerto: 443
- VPC: Seleccionar la VPC donde estan las instancias.
- Health check protocol: HTTPS.
- Register targets: Seleccionar las instancias que deseas agregar al grupo y el puerto correspondiente.
- Clic en Include as pending below.
- Clic en Create target group.
En el panel de navegación izquierdo, seleccionar Load Balancers. Clic en Create Load Balancer. Selecciona Application Load Balancer.
- Nombre del Load Balancer.
- Esquema: Seleccionar Internet-facing si deseas que el balanceador sea accesible desde internet. Seleccionar Internal si el balanceador solo será accesible dentro de la VPC.
- Listeners: Agregar Listener HTTPS
- Protocol: HTTPS.
- Port: 443.
- SSL Certificate: Selecciona un certificado o carga un certificado externo.
- VPC: Selecciona la VPC correcta.
- Availability Zones: Selecciona las subredes en diferentes zonas de disponibilidad donde el balanceador de carga operará.
- Security Groups: Selecciona o crea un grupo de seguridad que permita el tráfico entrante de HTTPS (puerto 443).
- Target group: Selecciona el grupo de destino que creaste anteriormente (my-target-group-https).
- Clic en Create load balancer.
- Verificar la Configuración
Una vez creado, selecciona el balanceador de carga y verifica que su estado sea Active.
- Prueba el balanceador de carga: Copia la DNS name del balanceador de carga y pégalo en tu navegador web para verificar que las solicitudes se enrutan correctamente a las instancias backend.
- Monitorea las Health Checks: En el grupo de destino, verifica que las instancias estén marcadas como Healthy.
Para asegurar que todo el tráfico se maneje de manera segura, puedes redirigir automáticamente las solicitudes HTTP a HTTPS:
- Agregar Listener HTTP: En la configuración del balanceador de carga, agrega un nuevo listener:
- Protocol: HTTP.
- Port: 80.
- Acción: Redirect.
- Protocol: HTTPS.
- Port: 443.
- Especifica el código de estado HTTP (por ejemplo, 301 Moved Permanently).
- Guarda los cambios.
- Verifica el estado de las instancias en el grupo de destino: Asegúrate de que al menos una instancia esté marcada como Healthy.
- Revisa las reglas de seguridad: Asegúrate de que los grupos de seguridad y las listas de control de acceso (ACL) de red permitan el tráfico necesario entre el balanceador de carga y las instancias. Ajusta las verificaciones de salud: Si las verificaciones de salud son demasiado estrictas o incorrectamente configuradas, podrían marcar las instancias como unhealthy (no saludables) incluso si están funcionando correctamente.
- Verifica el certificado: Asegúrate de que el certificado SSL/TLS esté correctamente configurado en AWS Certificate Manager (ACM) y asignado al listener HTTPS.
- Revisa la cadena de certificados: Asegúrate de que todos los certificados intermedios estén presentes y correctamente instalados.
- Renueva el certificado: Si el certificado ha caducado, renueva o reemplaza el certificado y actualiza el balanceador de carga con el nuevo.
- Revisa la configuración del grupo de destino: Asegúrate de que las instancias estén correctamente asociadas al grupo de destino y que el tráfico esté balanceado entre ellas.
- Verifica los grupos de seguridad: Asegúrate de que los grupos de seguridad del balanceador de carga y las instancias EC2 permitan el tráfico en los puertos y protocolos necesarios (HTTP, HTTPS).
FIN
Advertencia
Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.
-Agosto-2024 Paola Utrera v1.0 Primera version