bg-tutorials

So beheben Sie ACME SSL-Zertifikatsfehler

ACME SSL-Fehler

Wenn Sie SSL-Zertifikate unter Verwendung des ACME-Protokolls einrichten oder erneuern, stoßen Sie nicht selten auf kryptische Fehler, die den Prozess aufhalten. Dieser Leitfaden führt Sie durch die häufigsten ACME-Probleme, erklärt, was sie tatsächlich bedeuten, und zeigt Ihnen genau, wie Sie sie beheben können. Ganz gleich, ob Sie ein neues Zertifikat installieren, die Erneuerung automatisieren oder eine fehlgeschlagene Validierung beheben möchten, dies ist der richtige Ort, um damit zu beginnen.


Externe Kontobindung fehlt oder ist ungültig

Dieser Fehler tritt auf, wenn der ACME-Server eine externe Kontobindung (External Account Binding, EAB) verlangt, Ihr Client aber keine gültigen Anmeldeinformationen gesendet oder diese ganz ausgelassen hat. EAB ist ein Weg, um zu beweisen, dass Sie einen bestimmten ACME-Server verwenden dürfen.

Wie Sie das Problem beheben können:

  1. Überprüfen Sie Ihre Schlüssel-ID und Ihren HMAC-Schlüssel: Vergewissern Sie sich, dass beide korrekt und genau wie angegeben sind. Keine versteckten Leerzeichen oder Zeilenumbrüche.
  2. Verwenden Sie die richtige ACME Directory URL: Bei einigen Clients können Sie –server übergeben. Verwechseln Sie nicht die Produktions- und Staging-URLs.
  3. Fügen Sie die EAB-Flags hinzu: Wenn Sie acme.sh verwenden, sollten die Flags wie folgt aussehen: –eab-kid –eab-hmac-key
  4. Aktualisieren Sie Ihren ACME-Client: Wenn Ihr Client veraltet ist, aktualisieren Sie ihn. Neuere Versionen bieten eine bessere EAB-Unterstützung.

Das Konto existiert nicht

Der Fehler urn :ietf:params:acme:error:accountDoesNotExist erscheint, wenn Ihr ACME-Client versucht, einen lokalen Kontoschlüssel zu verwenden (der in seinem Konfigurationsordner gespeichert ist), den die Zertifizierungsstelle nicht erkennt.

Im Klartext: Ihr ACME-Client verweist auf ein Konto, das nicht existiert oder auf Seiten der Zertifizierungsstelle gelöscht wurde. Das kommt häufig vor, wenn Sie den Client neu installieren, den Server wechseln oder zwischen Staging- und Produktionsendpunkten wechseln.

Wie Sie das Problem beheben können:

1. Registrieren Sie Ihr ACME-Konto neu: Verwenden Sie bei der Registrierung Ihre korrekten Anmeldedaten für die externe Kontobindung (EAB).
Beispiel für acme.sh:

acme.sh --register-account \
--server https://acme.your-ca.com/v2/DV \
--eab-kid YOUR_EAB_KID \
--eab-hmac-key YOUR_EAB_HMAC_KEY \
--accountemail [email protected]

2. Überprüfen Sie die URL des ACME-Servers: Vergewissern Sie sich, dass Sie sich mit dem richtigen Endpunkt registrieren, der zu Ihrer Bestellung passt.

3. Vermeiden Sie die Wiederverwendung von Kontodateien: Verschieben Sie account.conf oder Kontoschlüssel nicht zwischen Servern oder Clients, es sei denn, Sie sind 100%ig sicher, dass sie für dieselbe CA und Umgebung gültig sind.


Schlechte Nonce oder Anti-Replay-Fehler

Ihr ACME-Client hat eine Anfrage mit einer Nonce (einem einmaligen Token der CA) gesendet, die bereits verwendet wurde, abgelaufen oder ungültig ist. Der Server blockiert sie, um Wiederholungsangriffe zu verhindern. Der urn :ietf:params:acme:error:badNonce ist in der Regel ein vorübergehendes Problem, das durch schlechtes Timing, verzögerte Anfragen oder eine falsche Uhrzeit verursacht wird.

Wie Sie das Problem beheben können:

1. Versuchen Sie die Anfrage einfach erneut: Die meisten ACME-Clients (wie acme.sh) versuchen es automatisch erneut, wenn sie einen badNonce Fehler erhalten. Falls nicht, führen Sie Ihren letzten Befehl manuell aus. Beim zweiten Versuch sollte es funktionieren.

2. Synchronisieren Sie Ihre Serveruhr: Eine verzerrte Systemzeit kann zu Wiedergabefehlern führen. Laufen:

timedatectl status
timedatectl set-ntp true

Oder stellen Sie sicher, dass ntpd oder chronyd ordnungsgemäß ausgeführt wird.

3. Prüfen Sie auf Proxy- oder CDN-Verzögerungen: Wenn Sie hinter Cloudflare, einem Load Balancer oder einem langsamen Proxy sitzen, könnte dies Ihre Anfragen so verzögern, dass die Nonce ungültig wird. Versuchen Sie, ihn vorübergehend zu umgehen.


Ein angeforderter Identifikator wurde nicht delegiert

Wenn die Fehlermeldung urn :ietf:params:acme:error:rejectedIdentifier erscheint, hat der ACME-Server einen oder mehrere der Domänennamen abgelehnt, die Sie zu validieren versucht haben. Normalerweise ist das der Fall:

  • Die Domain existiert nicht im öffentlichen DNS
  • Es gibt keinen DNS-Eintrag, der auf Ihren Server verweist
  • Die Domain ist nicht für die Ausstellung von Zertifikaten autorisiert

Einfach ausgedrückt: Die CA kann nicht überprüfen, ob Sie die Domain besitzen oder kontrollieren.

Wie Sie das Problem beheben können:

1. Verwenden Sie das richtige Format in Ihrem Befehl: Geben Sie nur den Domänennamen an, kein Protokoll, keine Schrägstriche oder vollständige URLs.

  • Richtig: -d beispiel.de
  • Falsch: -d http://example.com

2. Prüfen Sie, ob die Domäne existiert und aufgelöst werden kann. Laufen:

dig example.com +short

Wenn es keine Ausgabe gibt, ist Ihre Domain noch nicht live. Korrigieren Sie zunächst Ihre DNS-Einstellungen.

2. Stimmen Sie Ihre ACME-Bestellung ab: Wenn Sie ein kommerzielles ACME-Zertifikat verwenden, vergewissern Sie sich, dass die Domain, für die Sie das Zertifikat ausstellen, in der ursprünglichen Bestellung aufgeführt ist. Sie können keine Domains spontan hinzufügen. Sie müssen vorher genehmigt werden.

3. Achten Sie auf Tippfehler und Verwechslungen von Subdomains: Überprüfen Sie Dinge wie www.example.com vs. example.com. Diese werden als separate Einträge behandelt.


Nicht autorisierte oder ungültige Antwort

Die Zertifizierungsstelle konnte die Eigentümerschaft Ihrer Domäne nicht verifizieren. In den meisten Fällen konnte sie nicht auf die ACME-Herausforderungsdatei zugreifen, die Ihr Kunde auf dem Server abgelegt hat. Dies ist ein HTTP-Validierungsproblem: Die Zertifizierungsstelle hat versucht, Ihre Website zu erreichen, konnte aber die Challenge-Datei nicht finden oder lesen.

Die genaue Fehlermeldung lautet urn :ietf:params:acme:error:unauthorized. Sie kann auch erscheinen als: „Ungültige Antwort von http://yourdomain.com/.well-known/acme-challenge/…“.

Wie Sie das Problem beheben können:

  • Stellen Sie sicher, dass Ihr Server über Port 80 erreichbar ist (auch wenn Ihre Website normalerweise auf HTTPS umleitet).
  • Überprüfen Sie den Webroot-Pfad in Ihrer ACME-Client-Konfiguration. Die Challenge-Dateien müssen in: /.well-known/acme-challenge/.
  • Wenn Ihr Server HTTPS-Weiterleitungen erzwingt, erlauben Sie vorübergehend einfache HTTP-Anfragen für diesen Pfad.
  • Deaktivieren Sie CDNs, Reverse Proxies oder Firewalls, die die externe HTTP-Validierung durch die Zertifizierungsstelle beeinträchtigen könnten.
  • Überprüfen Sie die Dateiberechtigungen und vergewissern Sie sich, dass die Challenge-Datei tatsächlich erstellt wird und öffentlich zugänglich ist.

Token nicht gefunden oder Datei nicht erreichbar (404 oder 403)

Der ACME-Server hat versucht, die HTTP-Challenge-Datei abzurufen, aber eine 404 (Nicht gefunden) oder 403 (Verboten) Antwort erhalten. Das bedeutet, dass die Datei entweder nicht richtig platziert wurde, nicht öffentlich zugänglich ist oder Ihr Webserver den Zugriff blockiert.

Die genauen Fehlermeldungen können variieren. Hier ist, was Sie erwarten können:

  • Ungültige Antwort von http://yourdomain.com/.well-known/acme-challenge/… [404]
  • Ungültige Antwort… [403 Forbidden]
  • urn:ietf:params:acme:error:unauthorized

Wie Sie das Problem beheben können:

Überprüfen Sie das Stammverzeichnis für die Domäne und stellen Sie sicher, dass es mit dem Ort übereinstimmt, an dem der ACME-Client die Datei ablegt: /.well-known/acme-challenge/

Stellen Sie sicher, dass die Token-Datei existiert und von einem Browser aus erreichbar ist. Sie sollten in der Lage sein, die Challenge-URL direkt in Ihrem Browser zu öffnen und den Inhalt des Tokens zu sehen.

Legen Sie die richtigen Dateiberechtigungen fest: Die ACME-Challenge-Datei und ihre übergeordneten Ordner müssen für die ganze Welt lesbar sein.

Wenn Sie .htaccess-Regeln, Firewalls oder Sicherheits-Plugins (wie bei WordPress) verwenden, stellen Sie sicher, dass diese den Zugriff auf den Pfad /.well-known/ nicht blockieren.

Wenn Sie 403 erhalten, überprüfen Sie auch die Dateibesitzverhältnisse und SELinux/AppArmor-Einschränkungen, falls zutreffend.


CAA-Rekord verbietet Herausgabe

Ihr DNS hat einen CAA-Eintrag, der einschränkt, welche Zertifizierungsstellen Zertifikate für Ihre Domäne ausstellen können. Wenn die Zertifizierungsstelle, die Sie verwenden möchten, nicht aufgeführt ist, wird sie standardmäßig blockiert. Möglicherweise sehen Sie die folgende Fehlermeldung: urn :ietf:params:acme:error:caa

Dies ist eine Richtlinie auf DNS-Ebene, kein Serverproblem. CAs sind verpflichtet, CAA zu prüfen, bevor sie ein Zertifikat ausstellen.

Wie Sie das Problem beheben können:

Überprüfen Sie die DNS-Zone Ihrer Domain auf CAA-Einträge. Sie können Online-Tools oder den Befehl dig verwenden:

dig CAA yourdomain.com

Wenn es keinen CAA-Eintrag gibt, kann jede CA ausstellen. Wenn es jedoch einen gibt, stellen Sie sicher, dass er den genauen Namen Ihres Zertifikatsanbieters enthält:

  • 0 Ausgabe „sectigo.com“
  • 0 Ausgabe „digicert.com“

Wenn Sie ein Wildcard-Zertifikat verwenden, fügen Sie auch die Zeile issuewild hinzu: 0 issuewild „sectigo.com“

Warten Sie ein paar Minuten auf die DNS-Verbreitung und versuchen Sie dann erneut, die ACME-Bestellung auszuführen. Wenn Sie unsicher sind, entfernen Sie den CAA-Eintrag vorübergehend, um die Ausgabe zu testen, aber nur, wenn Sie das DNS sicher verwalten.


TXT-Eintrag nicht gefunden (für Wildcard-Zertifikate)

Wildcard-Zertifikate (wie *.example.com) erfordern eine DNS-01-Validierung, die einzige Methode, die von allen CAs für Wildcard-Domains zugelassen wird.

DNS-01 bittet Sie, einen speziellen TXT-Eintrag im DNS zu erstellen: _acme-challenge.beispiel.com

Wenn dieser Datensatz fehlt oder noch nicht propagiert wurde, erhalten Sie diese Fehlermeldung.

Beispiele für Fehler:

  • urn:ietf:params:acme:error:dns :: DNS-Problem: NXDOMAIN sucht nach TXT für _acme-challenge.example.com
  • TXT-Eintrag nicht gefunden für _acme-challenge.example.com

Wie Sie das Problem beheben können:

Erstellen Sie bei Ihrem DNS-Anbieter einen TXT-Eintrag:

  • Name: _acme-challenge.beispiel.com
  • Wert: (das Token, das Ihr ACME-Client Ihnen gibt; einmalig pro Anfrage)

Warten Sie 1-10 Minuten, bis der DNS übertragen wurde. Einige Anbieter brauchen länger. Bestätigen Sie dies mit dem folgenden Befehl.

dig TXT _acme-challenge.example.com

Sie können auch ein Online-Tool für die DNS-Suche verwenden. Sobald Sie sichtbar sind, versuchen Sie die Validierung erneut.


Zu viele Anfragen oder Ratenlimitüberschreitung

Der Fehler erscheint als urn :ietf:params:acme:error:rateLimited oder 429 Too Many Requests, wenn der ACME-Server sich weigert, Ihre Anfrage zu bearbeiten, weil Sie ein Ratenlimit erreicht haben.

Dies geschieht in der Regel, wenn Sie zu viele Zertifikate für dieselbe(n) Domäne(n) in einem kurzen Zeitraum anfordern oder zu viele fehlgeschlagene Anfragen hintereinander senden.

Wie Sie das Problem beheben können:

Die meisten Ratenlimits werden automatisch nach einer Stunde, einem Tag oder einer Woche zurückgesetzt, je nachdem, was Sie erreicht haben. Wenn Sie ein Skript verwenden, überprüfen Sie die Protokolle und beheben Sie Fehler, bevor Sie es erneut versuchen. Erzwingen Sie nicht blindlings, das verschlimmert die Sperre nur.

Vermeiden Sie bei DNS-01-Validierungen schnelle Neuanfragen nach kleinen Fehlern im TXT-Eintrag. Warten Sie auf die DNS-Übertragung. Wenn Ihre Zertifizierungsstelle eine Statusseite oder Kopfzeilen für die Ratenbegrenzung bereitstellt, überprüfen Sie diese für genauere Rücksetzungszeiten.


DNS-Fehler oder fehlgeschlagene Suchvorgänge

Wenn Sie Meldungen wie„DNS problem: NXDOMAIN looking up A for example.com“ oder„Temporary failure in name resolution“ erhalten, bedeutet dies, dass der ACME-Server Ihren Domänennamen nicht auflösen konnte, entweder weil die Domäne nicht existiert, noch nicht propagiert ist oder keine gültigen IP-Einträge hat.

Die Zertifizierungsstelle stützt sich auf DNS, um zu überprüfen, ob Ihre Domain existiert und auf einen realen Ort verweist. Wenn sie Ihre A- (IPv4) oder AAAA- (IPv6) Einträge nicht erreichen kann, bricht sie den Validierungsprozess ab.

Dies kann passieren, wenn:

  • Ihre Domain ist brandneu und DNS hat sich noch nicht vollständig ausgebreitet
  • Sie haben vergessen, die richtigen DNS-Einträge hinzuzufügen
  • Sie arbeiten in einem lokalen oder internen Netzwerk ohne öffentliche DNS-Sichtbarkeit
  • Es gibt einen Tippfehler in dem von Ihnen angegebenen Domainnamen

Wie Sie das Problem beheben können:

  • Vergewissern Sie sich, dass Ihre Domain über gültige A- oder AAAA-Einträge verfügt, die auf Ihren Live-Server verweisen.
  • Verwenden Sie Tools wie dig, nslookup oder Online-Checker (z.B. whatsmydns.net), um die Weitergabe zu überprüfen.
  • Vergewissern Sie sich, dass Sie keine private oder nur interne Domain verwenden. Die ACME-Validierung funktioniert nur für öffentlich auflösbare Namen.
  • Warten Sie nach DNS-Änderungen ein paar Minuten; sie werden nicht immer sofort aktiv.

Keine Verbindung zum ACME Server möglich

Dieser Fehler erscheint, wenn Ihr Server den ACME-API-Endpunkt nicht erreichen kann. Je nach ACME-Client kann er als Verbindung verweigert, Zeitüberschreitung während der Verbindung, Konnte keine Verbindung herstellen oder ähnliche Meldungen angezeigt werden.

Wie Sie das Problem beheben können:

  • Stellen Sie sicher, dass Ihr Server ausgehende HTTPS-Verbindungen auf Port 443 zulässt.
  • Überprüfen Sie die Firewall-Einstellungen oder die Regeln für ausgehende Netzwerke (insbesondere bei Cloud/VPS-Konfigurationen).
  • Wenn Sie einen Proxy verwenden, erlauben Sie den Datenverkehr zur ACME-Server-Domäne der CA.
  • Stellen Sie sicher, dass Ihr Server über einen funktionierenden DNS-Resolver verfügt.
  • Testen Sie die Konnektivität mit: curl https://acme.example.com (ersetzen Sie durch den echten Endpunkt Ihrer CA).
  • Starten Sie Ihren ACME-Client neu, nachdem Sie die Netzwerkprobleme gelöst haben.

Skript nach der Erneuerung fehlgeschlagen

Dieser Fehler tritt nach einer erfolgreichen Zertifikatserneuerung auf, wenn das Folgeskript, das Ihren Webserver oder Dienst neu laden soll, nicht ordnungsgemäß ausgeführt wurde. Abhängig von Ihrem ACME-Client sehen Sie möglicherweise Meldungen wie „Post-Hook-Fehler“, „Deploy-Skript fehlgeschlagen“ oder „Befehl nicht gefunden“.

Wie Sie das Problem beheben können:

  • Führen Sie Ihr Skript nach der Erneuerung manuell aus, um zu sehen, was kaputt geht.
  • Überprüfen Sie die Dateipfade, insbesondere für das neue Zertifikat und den Schlüssel.
  • Stellen Sie sicher, dass das Skript über Ausführungsrechte verfügt (z.B. chmod +x script.sh).
  • Suchen Sie nach Tippfehlern, fehlenden Abhängigkeiten oder einer falschen Befehlssyntax.
  • Wenn Sie einen Deploy-Hook oder Post-Hook verwenden, vergewissern Sie sich, dass der Client dies unterstützt und richtig konfiguriert ist.

Letzte Worte

Wir haben die häufigsten ACMS SSL-Zertifikatsfehler behandelt und schnelle Lösungen angegeben. Wenn keine dieser Lösungen Ihr Problem behebt, führen Sie Ihren ACME-Client im Debug-Modus aus. Die meisten Clients geben eine detailliertere Ausgabe, wenn Sie die Protokollierung aktivieren. Diese Informationen können Ihnen helfen, die eigentliche Ursache zu finden und Ihr SSL wieder zum Laufen zu bringen.

Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!

Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10

A detailed image of a dragon in flight
Geschrieben von

Erfahrener Content-Autor, spezialisiert auf SSL-Zertifikate. Verwandeln Sie komplexe Cybersicherheitsthemen in klare, ansprechende Inhalte. Tragen Sie durch wirkungsvolle Narrative zur Verbesserung der digitalen Sicherheit bei.