Wie kann ich Fehler bei abgelaufenen Zertifikaten oder „ungültigen Zertifikaten“ beheben, wenn ich eine API Gateway-API mit einem benutzerdefinierten Domainnamen aufrufe?

Letzte Aktualisierung: 23.09.2022

Ich definiere eine benutzerdefinierten Domänennamen für meine API in API Gateway. Ich habe eine Fehlermeldung erhalten, dass das AWS Certificate Manager (ACM) Zertifikat abgelaufen oder ein „ungültiges Zertifikat“ ist. Wie kann ich diesen Fehler beheben?

Kurzbeschreibung

Der Fehler „Zertifikat ist abgelaufen“ tritt auf, wenn das zum Erstellen des benutzerdefinierten Domänennamens verwendete Zertifikat abgelaufen ist.

Der „ungültige Zertifikatsfehler“ tritt aufgrund eines nicht übereinstimmenden allgemeinen Namens (CN) oder des Betreffnamens im Zertifikat auf.

Behebung

Abgelaufene ACM-Zertifikate

Wenn Ihr Zertifikat abgelaufen ist, wird möglicherweise eine Fehlermeldung ähnlich der folgenden angezeigt:

"SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED]"
Um den Ablauf des Zertifikats zu überprüfen, führen Sie den OpenSSL-Befehl s_client ähnlich dem folgenden aus:

openssl s_client -servername <custom domain name> -connect <custom domain name>:443 2>/dev/null | openssl x509 -noout -dates

Informationen zur Verlängerung des Zertifikats finden Sie unter Verwaltete Verlängerung für ACM-Zertifikate.

Informationen zum Vermeiden abgelaufener Zertifikate finden Sie unter Überwachen des Ablaufs importierter Zertifikate in ACM.

Nicht übereinstimmende ACM-Zertifikate

Wenn Ihr Zertifikat einen nicht übereinstimmenden CN- oder Betreffnamen enthält, wird möglicherweise eine Fehlermeldung ähnlich der folgenden angezeigt:

"ERR_CERT_COMMON_NAME_INVALID"

Bestätigen Sie Folgendes:

  • Das zum Erstellen des benutzerdefinierten Domänennamens verwendete Zertifikat ist in ACM vorhanden.
  • Der Betreffname des Zertifikats oder CN enthält den benutzerdefinierten Domänennamen. Wenn der benutzerdefinierte Domänenname beispielsweise custom.example.com lautet, muss der Betreffname oder CN custom.example.com oder *example.com enthalten.
  • Stellen Sie sicher, dass ein DNS-Eintrag vorhanden ist, der auf den benutzerdefinierten Domänennamen des API Gateway verweist. Der DNS-Eintrag kann entweder vom Typ CNAME oder A sein.

Hinweis: Benutzerdefinierte Domänennamen können nicht direkt auf den execute-api-Endpunkt verweisen, da im Zertifikat die benutzerdefinierte Domäne nicht als Subjekt-Alternativname (SAN) aufgeführt ist.

Beispiel-Konfiguration:

custom.example.com -> CNAME record -> d-yg54udirl4.execute-api.us-east-1.amazonaws.com

Sie können Ihre Konfiguration überprüfen, indem Sie den Befehl dig in Ihrer benutzerdefinierten Domain ähnlich dem folgenden ausführen:

$ dig custom.example.com

War dieser Artikel hilfreich?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?