En Classic Load Balancer (CLB) y Application Load Balancer (ALB) hay una opción para redirigir todo el tráfico http al oyente https.
No encuentro la opción para redirigir el tráfico del puerto tcp 80 al puerto tls 443 desde NLB (Network Load Balancer)
Cualquier ayuda es muy apreciada.
No, no puede redirigir a HTTP/HTTPS ya que Network LB no tiene una capa de aplicación.
El tráfico HTTP y HTTPS se puede enrutar a su entorno a través de TCP. Para establecer conexiones HTTPS seguras entre los clientes web y su entorno, instale un certificado autofirmado en las instancias del entorno y configure las instancias para escuchar en el puerto apropiado (generalmente 443) y terminar las conexiones HTTPS.
AWS Network Load Balancer no puede manejar la capa 7, por lo que no puede redirigir HTTP a HTTPS por sí mismo.
La solución que hice es:
De esta manera, el balanceador de carga de red aún puede terminar TLS. Y si las solicitudes HTTP llegan al LB, se reenviará al puerto 8080 y la aplicación/servidor web lo redirigirá a su sitio https.
Esta no es una función de Network Load Balancers, la función de la que está hablando es una función de capa 7 .
Los Network Load Balancers operan en la capa 4 , para reproducir esta funcionalidad, su aplicación necesitaría implementar esto en su lugar.
Si su aplicación es una aplicación pública basada en la web, puede evitar esto agregando una distribución de CloudFront al frente que puede realizar una redirección de HTTP a HTTPS o migrar a un balanceador de carga de la aplicación (como mencionó).