¿Cómo soluciono los problemas a la hora de conectar mi distribución de CloudFront a un origen personalizado a través de HTTPS?
He configurado mi distribución de Amazon CloudFront para conectarme a un origen personalizado mediante HTTPS. Ahora recibo el error «CloudFront no pudo conectarse a Origin» con el código de estado de HTTP 502 (puerta de enlace incorrecta).
Resolución
Compruebe que el nombre de dominio del origen de la distribución de CloudFront coincida con el nombre de dominio del certificado
Compruebe que el nombre de dominio del origen especificado en su distribución de CloudFront coincida con el nombre de dominio del certificado SSL/TLS de su origen. El nombre de dominio del origen de la distribución puede coincidir con una de las siguientes opciones:
- El nombre de dominio especificado como nombre común (CN) del certificado
- El nombre de dominio especificado en el nombre alternativo del sujeto (SAN) del certificado
Si el nombre de dominio de origen no coincide con ningún nombre de dominio asociado a su certificado, CloudFront devuelve el código de estado HTTP 502 (puerta de enlace incorrecta).
Compruebe si faltan entidades de certificación intermediarias
Utilice un verificador de SSL para comprobar si la cadena de certificados de su origen está disponible y no necesita ninguna entidad de certificación intermediaria.
Si utiliza Elastic Load Balancing como origen personalizado y debe actualizar la cadena de certificados, haga lo siguiente:
Vuelva a cargar el certificado con la cadena de certificados correcta.
-o-
Utilice AWS Certificate Manager (ACM) para solicitar un certificado público que proteja su dominio. ACM está completamente integrado con Elastic Load Balancing.
Pruebe la política de protocolo y los cifrados compatibles con su origen
Para que el protocolo de enlace SSL se realice correctamente, su origen debe admitir los cifrados que utiliza CloudFront.
Si la política de protocolo de su origen tiene activado SSLv3, CloudFront solo utilizará SSLv3 para comunicarse con su origen desde la línea de comandos o la terminal de Windows.
Nota: OpenSSL suele estar disponible de forma predeterminada en los sistemas Linux y macOS. OpenSSL para Windows está disponible en el sitio web de OpenSSL.
Para comprobar si su origen admite los cifrados que usa CloudFront, ejecute los siguientes comandos de OpenSSL.
Si la política de protocolo de su origen está configurada en SSLv3, ejecute:
echo | openssl s_client -ssl3 -cipher 'ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES256-SHA AES128-SHA DES-CBC3-SHA RC4-MD5 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES256-SHA384 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-SHA256 ECDHE-ECDSA-AES128-SHA' -connect your.origin.domain:443
Si su origen utiliza TLS, pruebe su origen con cada protocolo mediante estos comandos:
Para TLS, ejecute:
echo | openssl s_client -tls1 -cipher 'ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES256-SHA AES128-SHA DES-CBC3-SHA RC4-MD5 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES256-SHA384 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-SHA256 ECDHE-ECDSA-AES128-SHA' -connect your.origin.domain:443 -servername your.origin.domain
Para TLS 1.1, ejecute:
echo | openssl s_client -tls1_1 -cipher 'ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES256-SHA AES128-SHA DES-CBC3-SHA RC4-MD5 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES256-SHA384 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-SHA256 ECDHE-ECDSA-AES128-SHA' -connect your.origin.domain:443 -servername your.origin.domain
Para TLS 1.2, ejecute:
echo | openssl s_client -tls1_2 -cipher 'ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES256-SHA384 AES256-SHA AES128-SHA DES-CBC3-SHA RC4-MD5 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES256-SHA384 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-SHA256 ECDHE-ECDSA-AES128-SHA' -connect your.origin.domain:443 -servername your.origin.domain
Nota: Configure el valor de -servername con el nombre de dominio del origen. Si utiliza CloudFront para reenviar el Encabezado del host, también puede configurar -servername con el CNAME de la solicitud de CloudFront.
Si se conecta correctamente al origen, verá un resultado de los comandos anteriores similar al siguiente. El resultado confirma que la conexión se ha establecido correctamente mediante la versión SSL o TLS y los cifrados compatibles.
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES128-SHA256 Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-AES128-SHA256 .... Timeout : 7200 (sec) Verify return code: 0 (ok) ---- DONE
Nota: Para obtener más información sobre la resolución de problemas relacionados con los errores 502, consulte Código de estado HTTP 502 (puerta de enlace incorrecta).
Información relacionada
Solicitar HTTPS para la comunicación entre CloudFront y su origen personalizado
Contenido relevante
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace un año