Saltar al contenido

¿Por qué no puedo elegir un certificado SSL/TLS personalizado para mi distribución de CloudFront?

5 minutos de lectura
0

Quiero usar un certificado SSL/TLS personalizado al configurar mi distribución de Amazon CloudFront, pero no tengo la opción de elegirlo.

Descripción corta

Es posible que no veas la opción del certificado SSL/TLS personalizado en tu distribución de CloudFront en los siguientes casos:

  • Tu certificado se almacena en otra región de AWS.
  • No se pudo realizar la validación del certificado de AWS Certificate Manager (ACM).
  • El certificado ha caducado.
  • No tienes los permisos de AWS Identity and Access Management (IAM) necesarios para ver o seleccionar certificados.

Resolución

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de AWS CLI.

Comprueba la configuración de tu certificado

Realiza las siguientes acciones de solución de problemas en función de la configuración de la distribución de CloudFront.

Certificados ACM

Si usas un certificado solicitado o importado a ACM, confirma que tu certificado cumple con los siguientes requisitos:

Para más información, consulta ¿Por qué no puedo encontrar mi certificado de ACM importado para mi equilibrador de carga o distribución de CloudFront?

Certificados importados a IAM

Si has importado tu certificado SSL/TLS a IAM, comprueba que has utilizado la ruta de CloudFront correcta. Ejecuta el comando upload-server-certificate de AWS CLI para cargar el certificado con una ruta de CloudFront específica:

aws iam upload-server-certificate
 --server-certificate-name CertificateName
 --certificate-body file://public_key_certificate_file.pem
 --private-key file://privatekey.pem
 --certificate-chain file://certificate_chain_file.pem
 --path /cloudfront/DistributionName/

Nota: Sustituye CertificateName por el nombre de tu certificado, file://public_key_certificate_file por tu clave pública y file://privatekey.pem por tu clave privada. Además, sustituye file://certificate_chain_file por la cadena de certificados y DistributionName por el nombre de la distribución de CloudFront.

Si no cargaste el certificado con la ruta de CloudFront, ejecuta el comando update-server-certificate para actualizar el certificado con la ruta:

aws iam update-server-certificate
 --server-certificate-name CertificateName
 --new-path /cloudfront/DistributionName/

Nota: Sustituye CertificateName por el nombre del certificado y DistributionName por el nombre de la distribución de CloudFront. Después de agregar un certificado a una distribución de CloudFront, el estado de la distribución cambia de Implementada a En curso. Una vez que CloudFront implementa los cambios en todas las ubicaciones periféricas, el estado de distribución vuelve a cambiar a Implementado. El tiempo de implementación típico es de 5 minutos.

Comprueba los permisos de tu certificado

Confirma que tienes los permisos necesarios al asignar un certificado de ACM o IAM a la distribución de CloudFront.

El usuario o rol de IAM que uses para asignar el certificado debe tener los siguientes permisos:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "acm:ListCertificates",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "cloudfront:ListDistributions",
                "cloudfront:ListStreamingDistributions"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "cloudfront:List*",
                "cloudfront:Get*",
                "cloudfront:Update*"
            ],
            "Resource": "arn:aws:cloudfront::account-id:distribution/distribution-id"
        },
        {
            "Effect": "Allow",
            "Action": "iam:ListServerCertificates",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:GetServerCertificate",
                "iam:UpdateServerCertificate"
            ],
            "Resource": "arn:aws:iam::account-id:server-certificate/certificate-name-with-path"
        }
    ]
}

Resolución de problemas adicionales

Si has importado tu certificado SSL/TLS a IAM, confirma que la cadena de certificados está en el orden correcto y que el certificado no ha caducado. Para más información, consulta ¿Cómo puedo cargar e importar un certificado SSL a IAM?

Para usar varios nombres de dominio en tu distribución de CloudFront, solicita o genera un único certificado SSL/TLS que incluya todos los dominios necesarios. De forma predeterminada, ACM admite hasta 100 dominios para cada certificado.

Nota: No puedes asociar más de un certificado SSL/TLS a una distribución individual de CloudFront.

Información relacionada

¿Cómo uso ACM para solucionar el error del nombre de dominio de la distribución de CloudFront?"InvalidViewerCertificate"

Requisitos para usar certificados SSL/TLS con CloudFront