He configurado un nombre de dominio personalizado para mi API de API Gateway. He recibido un error que indica que el certificado de AWS Certificate Manager (ACM) ha vencido o es un «certificado no válido».
Descripción corta
El error «el certificado ha vencido» se produce cuando el certificado utilizado para crear el nombre de dominio personalizado ha vencido.
El error de «certificado no válido» se produce porque el nombre común (CN) o el nombre del sujeto no coinciden en el certificado.
Resolución
Certificados ACM vencidos
Si el certificado ha venido, es posible que reciba un error similar al siguiente: «SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED]»
Para comprobar la fecha de vencimiento del certificado, ejecute el comando s_client de OpenSSL de forma similar a la siguiente:
openssl s_client -servername <custom domain name> -connect <custom domain name>:443 2>/dev/null | openssl x509 -noout -dates
Para renovar el certificado, consulte Renovación administrada de certificados en AWS Certificate Manager.
Para evitar que los certificados venzan, consulte Cómo supervisar los vencimientos de los certificados importados en ACM.
Certificados de ACM no coincidentes
Si el certificado tiene un CN o un nombre de sujeto que no coinciden, recibirá un error similar al siguiente: «ERR_CERT_COMMON_NAME_INVALID»
Para resolverlo, confirme los siguientes ajustes:
- El certificado utilizado para crear el nombre de dominio personalizado existe en ACM.
- El nombre del sujeto o CN del certificado incluyen el nombre de dominio personalizado. Por ejemplo, si el nombre de dominio personalizado es personalizado.ejemplo.com, el nombre del sujeto o CN debe incluir personalizado.ejemplo.com o *ejemplo.com.
- Asegúrese de que haya un registro DNS que apunte al nombre de dominio personalizado de API Gateway. El registro DNS puede ser de tipo CNAME o A.
Nota: Los nombres de dominio personalizados no pueden apuntar directamente al punto de enlaceexecute-api porque el certificado no incluye el dominio personalizado como nombre alternativo del sujeto (SAN).
Configuración del ejemplo:
custom.example.com -> CNAME record -> d-yg54udirl4.execute-api.us-east-1.amazonaws.com
Para comprobar la configuración, ejecute el comando dig en el dominio personalizado de forma similar a la siguiente:
$ dig custom.example.com
Información relacionada
¿Cómo puedo resolver los errores de resolución de DNS o de falta de coincidencia de certificados para mi nombre de dominio personalizado de API Gateway?