Configurei um nome de domínio personalizado para minha API do API Gateway. Recebi um erro informando que o certificado do AWS Certificate Manager (ACM) está expirado ou é “certificado inválido”. Como posso solucionar esse erro?
Breve descrição
O erro de certificado expirado ocorre quando o certificado usado para criar o nome de domínio personalizado está expirado.
O “erro de certificado inválido” ocorre devido a um nome comum (CN) ou nome de assunto incompatível no certificado.
Resolução
Certificados ACM expirados
Se o seu certificado estiver expirado, você poderá receber um erro semelhante ao seguinte:
"SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED]"
Para verificar a expiração do certificado, execute o comando OpenSSL s_client semelhante ao seguinte:
openssl s_client -servername <custom domain name> -connect <custom domain name>:443 2>/dev/null | openssl x509 -noout -dates
Para renovar o certificado, consulte Renovação gerenciada para certificados ACM.
Para evitar certificados expirados, consulte Como monitorar as expirações de certificados importados no ACM.
Certificados ACM incompatíveis
Se o certificado tiver um CN ou nome de assunto incompatíveis, você poderá receber um erro semelhante ao seguinte:
"ERR_CERT_COMMON_NAME_INVALID"
Confirme as seguintes configurações:
- O certificado usado para criar o nome de domínio personalizado existe no ACM.
- O nome do assunto do certificado ou CN inclui o nome de domínio personalizado. Por exemplo, se o nome de domínio personalizado for custom.example.com, o nome do assunto ou CN deve incluir custom.example.com ou *example.com.
- Verifique se há um registro DNS apontando para o nome de domínio personalizado do API Gateway. O registro DNS pode ser do tipo CNAME ou A.
Observação: os nomes de domínio personalizados não podem apontar diretamente para o endpoint execute-api porque o certificado não tem o domínio personalizado listado como Nome Alternativo do Assunto (SAN).
Exemplo de configuração:
custom.example.com -> CNAME record -> d-yg54udirl4.execute-api.us-east-1.amazonaws.com
Você pode verificar sua configuração executando o comando dig em seu domínio personalizado semelhante ao seguinte:
$ dig custom.example.com
Informações relacionadas
Como posso resolver erros de resolução de DNS ou incompatibilidade de certificados para meu nome de domínio personalizado do API Gateway?