Ein Zertifikat kann lokal erneuert werden und dennoch öffentlich fehlschlagen, wenn die ACME-Zertifizierungsstelle die Challenge über den aus dem Internet erreichbaren Pfad nicht erreichen oder überprüfen kann.
Auf einem selbst gehosteten NAS oder Heimserver kann ein lokaler Testlauf bestätigen, dass Certbot, acme.sh oder der Reverse-Proxy Challenge-Dateien erstellen und auf die eigene Konfiguration zugreifen kann. Die öffentliche Ausstellung stellt jedoch andere Anforderungen: Der autoritative DNS muss auf die richtige Adresse verweisen, der ausgewählte IPv4- oder IPv6-Pfad muss erreichbar sein, der Router und die Firewall müssen die Validierungsanfrage weiterleiten, und der Reverse-Proxy muss das exakte Challenge-Token ausliefern, bevor Weiterleitungen oder Anwendungsrouten dazwischenfunken.
Lokalen Erfolg des Clients von der öffentlichen Domain-Validierung trennen
Lesen Sie das Erneuerungsprotokoll und ermitteln Sie, was tatsächlich erfolgreich war. Eine lokale Konfigurationsprüfung, ein Zertifikatsparser-Test, das Schreiben in das Webroot oder eine Staging-Anfrage beweisen nicht, dass eine externe Zertifizierungsstelle den Heimserver erreicht hat.
Ein häufiger Fall im Nginx Proxy Manager weist bei einer trotz funktionierender lokaler Proxy-Oberfläche fehlschlagenden HTTP-Challenge auf die Erreichbarkeit des öffentlichen Ports 80 als erste zu überprüfende Voraussetzung hin.
Notieren Sie den Challenge-Typ, den Hostnamen, die Validierungs-URL, die aufgelöste Adresse und den genauen Fehler der Zertifizierungsstelle. Fahren Sie erst ab dem ersten externen Fehler fort – DNS-Abfrage, TCP-Verbindung, HTTP-Status, Token-Abweichung oder sekundäre Validierung –, statt die Erneuerung wiederholt zu erzwingen, ohne neue Erkenntnisse zu gewinnen.
Autoritative A- und AAAA-Einträge mit dem tatsächlichen Serverpfad vergleichen
Fragen Sie jeden Hostnamen des Zertifikats über den autoritativen DNS ab und protokollieren Sie die A- und AAAA-Antworten. Vergleichen Sie sie mit der aktuellen öffentlichen IPv4-Adresse des Routers, der erreichbaren IPv6-Adresse des Servers und dem Proxy, der die Challenge tatsächlich ausliefert.
In einem Virtualmin-Fall war die Erneuerung erst erfolgreich, nachdem ein veröffentlichter AAAA-Eintrag entfernt worden war, der die Validierung auf einen fehlerhaften IPv6-Pfad leitete. Dies zeigt, wie ein fehlerhafter AAAA-Validierungspfad eine ansonsten funktionierende IPv4-Konfiguration außer Kraft setzen kann.
Wenn eine Adressfamilie nicht vollständig erreichbar ist, entfernen Sie den entsprechenden Eintrag vorübergehend oder reparieren Sie Firewall, Routing, Listener und Proxy-Pfad. Prüfen Sie außerdem, ob alle autoritativen Nameserver vor einem erneuten Versuch der Ausstellung dieselben aktuellen Einträge zurückgeben.
Die exakte HTTP-Challenge-URL von außerhalb des Heimnetzes testen
Legen Sie für HTTP-01 eine harmlose Testdatei unter dem konfigurierten Pfad /.well-known/acme-challenge/ ab und rufen Sie sie über den Zertifikatshostnamen per HTTP aus dem Mobilfunknetz oder einem anderen externen Netzwerk ab.
Ein Bericht zum Selbsthosting von Home Assistant zeigt, wie eine durch den ISP blockierte HTTP-Challenge die HTTP-Validierung verhindert, selbst wenn der Dienst lokal funktioniert.
Die externe Anfrage muss das richtige Token ohne Authentifizierung, Captive-Portal-Seite, Router-Anmeldeseite, 404-Fehler der Anwendung oder Weiterleitung zu einem nicht erreichbaren Ziel erreichen. Wenn TCP-Port 80 nie geöffnet wird, prüfen Sie ISP, CGNAT, Router-Weiterleitung, Host-Firewall und Proxy-Listener, bevor Sie den ACME-Client ändern.
Sicherstellen, dass Reverse-Proxy und Webroot dasselbe Token ausliefern
Vergleichen Sie den vom ACME-Client geschriebenen Token-Pfad mit dem Dateisystem oder dem temporären Responder, den der öffentliche virtuelle Host verwendet. Container, Bind-Mounts und getrennte Proxy-Netzwerke können dazu führen, dass der Client in ein Verzeichnis schreibt, während NGINX oder Caddy ein anderes ausliefert.
Prüfen Sie während einer einzelnen externen Challenge-Anfrage das Zugriffsprotokoll des Proxys. Eine eintreffende Anfrage mit Status 404 weist auf eine nicht übereinstimmende Route oder ein falsches Webroot hin; 401 oder 403 deutet auf Authentifizierung oder Filterung hin; 502 weist auf eine unnötige Upstream-Abhängigkeit im Challenge-Pfad hin.
Geben Sie dem Challenge-Pfad Vorrang vor der normalen Anwendungsrouting und behalten Sie den Hostnamen bei. Halten Sie Weiterleitungen einfach und überprüfen Sie sie extern. Leiten Sie das Token nicht durch eine Backend-Anwendung, die während der Erneuerung offline sein kann.
CGNAT, Firewalls und Erreichbarkeit von mehreren Standorten prüfen
Vergleichen Sie die WAN-Adresse des Routers mit der öffentlichen IPv4-Adresse und bestätigen Sie, dass der Validierungsport von mehr als einem externen Netzwerk aus erreichbar ist. Ein lokaler NAT-Loopback-Test kann erfolgreich sein, obwohl unaufgeforderter Internetverkehr den Router nie erreicht.
Zertifizierungsstellen validieren zunehmend von mehreren Netzwerkstandorten aus, um Routing-Angriffe zu erschweren. Die Forschung zu mehreren Validierungspunkten erklärt, warum ein Pfad, der aus einem Land, über einen ISP oder von einem Testdienst aus erreichbar ist, bei einer umfassenderen Validierung dennoch fehlschlagen kann.
Entfernen Sie während der Validierung Geoblocking, Länderfilter, vorübergehende Sperrregeln und Ratenbegrenzungen aus dem eng begrenzten Challenge-Pfad. Wenn die Heimverbindung hinter CGNAT liegt oder der ISP den erforderlichen Port blockiert, verwenden Sie stattdessen DNS-01 oder ein ausgehendes Validierungsdesign, anstatt unbeteiligte Firewall-Regeln abzuschwächen.
Den Challenge-Typ passend zur Netzwerkgrenze auswählen
Verwenden Sie HTTP-01 weiterhin, wenn der öffentliche DNS korrekt ist und Port 80 den Challenge-Responder zuverlässig erreichen kann. Nutzen Sie DNS-01, wenn der eingehende Zugriff nicht verfügbar ist, Wildcard-Zertifikate erforderlich sind oder der Dienst privat bleiben muss.
Der ZimaSpace-Artikel darüber, wie CGNAT die eingehende Validierung blockiert, hilft dabei zu erkennen, wann eine Änderung der ACME-Methode sinnvoller ist als eine Reparatur des lokalen Proxys.
Die Fehlerbehebung ist erst abgeschlossen, wenn eine erzwungene Erneuerung über die produktive Zertifizierungsstelle erfolgreich ist, das neue Zertifikat im aktiven Proxy bereitgestellt wurde, externe Clients die neue Seriennummer und das neue Ablaufdatum erhalten und ein unbeaufsichtigter Erneuerungstest ohne manuelle Port- oder DNS-Änderungen funktioniert.
Support & Tipps
Mehr zum Lesen

Kann Plex eine GPU mit einem anderen Docker-Container gemeinsam nutzen?
Plex und ein weiterer Container können häufig auf dieselbe GPU zugreifen, aber du musst die Treiberunterstützung, die Gerätezuordnung, die Auslastung der Video-Engine, den Speicher...

So erkennst du, ob ein Plex-Fehler vom Client oder vom Server verursacht wird
Reproduziere dasselbe Element auf einem anderen Client, vergleiche den Sitzungspfad und sammle Serverbelege erst, nachdem der Geltungsbereich dir gezeigt hat, wo der Fehler tatsächlich...

So konfigurierst du den Plex-Cache und den temporären Transcodierungs-Speicher
Schütze den persistenten Plex-Zustand, indem du temporäre Transcodierungsdateien auf geeignetem lokalem Speicher ablegst, und überprüfe anschließend die Bereinigung, den freien Speicherplatz und das Verhalten...

