Technik · 10 Min. Lesezeit

SSL-Zertifikate rechtzeitig prüfen und überwachen

Kurz erklärt

Läuft ein TLS-Zertifikat (landläufig „SSL-Zertifikat“) ab oder passt es nicht zum Domainnamen, blockieren Browser den Zugriff mit einer Sicherheitswarnung. Die Website ist dann für Besucher faktisch nicht erreichbar, obwohl der Server läuft. Die Restlaufzeit lässt sich automatisch überwachen; Warnungen 30, 14, 7, 3 und 1 Tag vor Ablauf geben genug Zeit zur Reaktion.

Das Wichtigste in Kürze

  • Ein abgelaufenes Zertifikat ist ein vollständiger Ausfall aus Besuchersicht, obwohl der Webserver antwortet.
  • Automatische Erneuerung (ACME, z. B. Let’s Encrypt) fällt selten auf, wenn sie klappt – und gar nicht, wenn sie stillschweigend scheitert.
  • Prüfen Sie Restlaufzeit, Kette und Hostnamen, nicht nur das Ablaufdatum.
  • Kürzere Laufzeiten sind Trend: Wer manuell verlängert, hat immer weniger Spielraum; automatisieren Sie und überwachen Sie das Ergebnis.
  • Mit openssl s_client prüfen Sie ein Zertifikat in Sekunden von Hand; ein Monitor tut es dauerhaft und alarmiert rechtzeitig.

Was passiert, wenn ein Zertifikat abläuft?

Ein TLS-Zertifikat bestätigt, dass ein öffentlicher Schlüssel zu einem Domainnamen gehört, und ist von einer Zertifizierungsstelle (Certificate Authority, CA) signiert. Das Format ist im Standard X.509 beschrieben (siehe RFC 5280 in den Quellen); Begriffe wie SNI oder Intermediate erklärt das Glossar. Jedes Zertifikat hat ein Gültigkeitsende. Danach lehnen Browser, Apps und Programmierschnittstellen die Verbindung ab: Besucher sehen eine ganzseitige Warnung wie „Ihre Verbindung ist nicht privat“ (Fehlercodes wie NET::ERR_CERT_DATE_INVALID), Skripte brechen mit Fehlern wie „certificate has expired“ ab, und Zahlungs- oder API-Schnittstellen, die Ihr Zertifikat prüfen, verweigern die Zusammenarbeit.

Der entscheidende Punkt: Der Server läuft weiter. Ein einfacher Test, der nur prüft, ob Port 443 antwortet, bleibt grün. Ein HTTP-Monitor, der Zertifikate strikt prüft, schlägt dagegen fehl. Das Thema ist deshalb ein Standardfall dafür, warum Monitoring mehr als einen Ping braucht (siehe Ausfallursachen von Websites).

Wie lange sind Zertifikate gültig – und warum werden die Laufzeiten kürzer?

Die Gültigkeitsdauer hängt von der Zertifizierungsstelle und den Branchenregeln ab. Let’s Encrypt stellt Zertifikate mit 90 Tagen Laufzeit aus und empfiehlt, sie automatisch etwa 30 Tage vor Ablauf zu erneuern. Bei kommerziellen Zertifikaten war die Höchstdauer lange etwa ein Jahr. Nach unserem Kenntnisstand hat das CA/Browser Forum eine stufenweise Verkürzung beschlossen, die 2026 bei einer Höchstdauer von 200 Tagen beginnt und bis 2029 weiter sinken soll. Prüfen Sie die aktuellen Regeln bei Ihrer CA, da sie sich ändern können.

Praktisch heißt das: Manuelle Jahresverlängerungen werden unrealistisch. Wer heute noch Zertifikate von Hand einspielt, sollte auf Automatisierung wechseln und deren Ergebnis überwachen. Das Ausstellungsprotokoll ACME ist in RFC 8555 beschrieben; Clients wie Certbot oder acme.sh setzen es um.

ZertifikatsartTypische LaufzeitErneuerungRisiko
Let’s Encrypt90 TageAutomatisch per ACME-ClientStiller Fehlschlag der Automatik
Kommerzielles Zertifikat (DV/OV/EV)Je nach CA und Branchenregel, höchstens 200 Tage (Stand 2026, Verkürzung geplant)Manuell oder per ACME/APIVergessene Verlängerung, Bestell- und Prüfprozess
Hoster-Zertifikat (Shared Hosting, Managed)Meist automatischDurch den HosterZertifikat deckt www oder Subdomain nicht ab
CDN-/Proxy-ZertifikatVom Anbieter verwaltetDurch den AnbieterUrsprungsserver hat eigenes, abgelaufenes Zertifikat

Warum scheitert die automatische Erneuerung?

Die Erfahrung zeigt: Die meisten Ablauf-Ausfälle entstehen nicht, weil niemand an Zertifikate gedacht hat, sondern weil die Automatik leise ausgefallen ist. Die häufigsten Ursachen:

UrsacheTypisches ZeichenAbhilfe
Cronjob oder systemd-Timer fehlt bzw. läuft nichtZertifikat wird nie erneuert, kein Fehler sichtbarTimer prüfen (systemctl list-timers), Job per Heartbeat überwachen
HTTP-01-Validierung blockiertFehler beim Abruf von /.well-known/acme-challenge/Weiterleitungen, Firewall oder Basic-Auth für diesen Pfad ausnehmen
DNS-01: API-Token abgelaufen oder gelöschtValidierung scheitert beim TXT-EintragToken erneuern, Rechte prüfen
Neues Zertifikat wird nicht geladenDatei auf der Platte neu, Server liefert weiter das alteDeploy-Hook mit systemctl reload nginx oder apache2
DNS zeigt auf einen anderen ServerValidierung scheitert nach UmzugA-/AAAA-Einträge prüfen, siehe DNS-Fehler erkennen und beheben
CAA-Eintrag verbietet die CAFehlermeldung „CAA record prevents issuance“CAA-Eintrag um die verwendete CA ergänzen (RFC 8659)
Ratenbegrenzung der CAFehler bei zu vielen AusstellungsversuchenVersuche reduzieren, Dokumentation der CA beachten

Ein zusätzlicher Stolperstein: Früher schickte Let’s Encrypt Erinnerungs-E-Mails bei bevorstehendem Ablauf. Soweit uns bekannt, wurde das 2025 eingestellt; verlassen Sie sich daher nicht auf Hinweise der CA, sondern auf eigene Überwachung.

Was gehört zu einer vollständigen Zertifikatsprüfung?

Das Ablaufdatum ist nur eine von mehreren Eigenschaften. Eine gründliche Prüfung umfasst:

  • Restlaufzeit: Wie viele Tage bleiben bis zum Ende der Gültigkeit?
  • Hostname: Steht der Domainname (und www) im Feld „Subject Alternative Name“? Ein Wildcard-Zertifikat *.example.com deckt example.com selbst nicht ab.
  • Zertifikatskette: Sind die Zwischenzertifikate (Intermediates) mitgeliefert? Fehlt eines, funktioniert die Seite im Desktop-Browser oft noch (er lädt es nach), in Apps und Skripten nicht.
  • Vertrauenswürdigkeit: Ist die ausstellende CA im System bekannt? Selbstsignierte Zertifikate zeigen immer Warnungen.
  • Protokollversion: Werden veraltete Protokolle abgeschaltet und TLS 1.2 oder 1.3 verwendet?

Mit openssl lassen sich die wichtigsten Angaben direkt abfragen:

# Ablaufdatum und Aussteller anzeigen
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null \
  | openssl x509 -noout -subject -issuer -dates

# Restlaufzeit prüfen: Exit-Code 0, wenn noch mindestens 14 Tage gültig
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null \
  | openssl x509 -noout -checkend $((14*24*3600))

# Bei Certbot: Laufzeiten aller verwalteten Zertifikate und Trockenlauf der Erneuerung
sudo certbot certificates
sudo certbot renew --dry-run

Wichtig ist der Parameter -servername: Hinter einer IP-Adresse können mehrere Domains liegen, und der Server wählt das Zertifikat nach diesem Namen (SNI). Ohne Angabe sehen Sie womöglich das Standardzertifikat des Servers statt das der gewünschten Domain.

Wie viel Vorlauf brauchen Sie? Ein Rechenbeispiel

Beispielrechnung

Angenommen, ein Let’s-Encrypt-Zertifikat hat 90 Tage Laufzeit, und Certbot ist so eingestellt, dass es bei weniger als 30 Tagen Restlaufzeit erneuert. Im Normalbetrieb wird also etwa alle 60 Tage ein neues Zertifikat ausgestellt, und die Restlaufzeit schwankt zwischen etwa 30 und 90 Tagen. Fällt die Restlaufzeit auf unter 30 Tage und das Zertifikat wurde nicht ersetzt, ist die Automatik offenbar gescheitert.

Die Warnstufen 30, 14, 7, 3 und 1 Tag wirken dann wie ein gestaffelter Weckruf: Die erste Meldung bei 30 Tagen lässt noch einen Monat zur Fehlersuche. Ist der Fehler eine DNS-Umstellung nach dem Hosterwechsel, sind 30 Tage reichlich; ist er eine fehlende Freigabe beim Hoster, kann der Ticketweg ein bis zwei Wochen dauern. Mit einer Warnung bei 14 Tagen wäre das knapp, mit 7 Tagen kritisch, mit 1 Tag ein Notfall. Der Rechenweg zeigt, warum die erste Warnstufe großzügig sein muss.

Welche Fehlerbilder gibt es, und was bedeuten sie?

Fehlermeldung (Beispiele)BedeutungNächster Schritt
NET::ERR_CERT_DATE_INVALID / „certificate has expired“Gültigkeit überschritten (oder Uhr des Clients falsch)Zertifikat erneuern, Server neu laden, Uhrzeit prüfen
NET::ERR_CERT_COMMON_NAME_INVALID / „hostname mismatch“Domainname steht nicht im ZertifikatZertifikat mit allen Namen (SAN) ausstellen; SNI-Konfiguration prüfen
„unable to get local issuer certificate“Zwischenzertifikat fehlt in der KetteVollständige Kette (fullchain.pem) einbinden
NET::ERR_CERT_AUTHORITY_INVALIDSelbstsigniert oder CA unbekanntZertifikat einer vertrauenswürdigen CA verwenden
„SSL handshake failed“, „no shared cipher“Protokoll- oder Cipher-KonfliktTLS-Konfiguration prüfen und modernisieren

Besonders heikel wird ein Zertifikatsfehler in Kombination mit HSTS (HTTP Strict Transport Security, RFC 6797): Hat der Browser die Regel gespeichert, bietet er bei einem Zertifikatsfehler keine „Trotzdem fortfahren“-Option mehr an. Das ist gewollt und schützt Besucher, verschärft aber den Schaden eines Ablaufs. Mehr zu den Headern finden Sie in Security-Header prüfen.

Welche Fehler passieren in der Praxis besonders häufig?

FehlerFolgeGegenmaßnahme
Nur die Hauptdomain prüfenSubdomain (shop., api., mail.) läuft unbemerkt abJe Hostname einen SSL-Monitor anlegen
Auf die Erneuerungs-Mail der CA vertrauenKeine Warnung, wenn sie ausbleibtEigene Überwachung der Restlaufzeit
Erneuert, aber Server nicht neu geladenAltes Zertifikat bleibt im SpeicherDeploy-Hook oder Reload nach Erneuerung
Nach Serverumzug nicht neu geprüftNeuer Server hat kein oder das falsche ZertifikatZertifikat in die Umzugs-Checkliste aufnehmen, siehe Relaunch und Umzug überwachen
Unvollständige KetteFunktioniert im Browser, scheitert in AppsMit openssl s_client -showcerts prüfen
Mail- und andere Dienste vergessenZertifikat des Mailservers läuft abTCP- bzw. SSL-Prüfung für die jeweiligen Ports
Warnungen an eine einzige PersonUrlaub oder Jobwechsel führen zu stiller GefahrZweiten Kanal und zweite Person einrichten

Wie gehen Sie bei mehreren Domains und Subdomains vor?

In der Praxis betreuen Sie selten nur ein Zertifikat. Eine sinnvolle Vorgehensweise: Erfassen Sie in einer Liste jeden öffentlich erreichbaren Hostnamen mit Zertifikatstyp, Aussteller und Erneuerungsweg. Wildcard-Zertifikate decken viele Subdomains mit einem einzigen Ablaufdatum ab, das macht die Überwachung einfacher, bedeutet aber auch, dass ein Fehler gleich alle Subdomains trifft. Einzelzertifikate begrenzen den Schaden, verlangen aber mehr Verwaltung. Bei Multi-Domain-Zertifikaten (viele Namen in einem Zertifikat) genügt ein Monitor je Zertifikat, sofern Sie zusätzlich prüfen, dass der jeweilige Hostname noch im Zertifikat steht.

Vergessen Sie nicht die Dienste jenseits der Website: Mailserver (SMTPS, IMAPS), VPN-Gateways, Admin-Oberflächen und APIs nutzen oft eigene Zertifikate, die im Alltag niemand sieht. Eine Ablaufwarnung für diese Endpunkte ist häufig der einzige Weg, sie rechtzeitig zu bemerken.

Checkliste: Zertifikate im Griff behalten

  1. Alle öffentlich erreichbaren Hostnamen auflisten (Hauptdomain, www, Subdomains, API, Mail).
  2. Für jeden Namen die Zuständigkeit und die Erneuerungsart festhalten (ACME, Hoster, manuell).
  3. Je Hostname einen SSL-Monitor mit Alarmkanal einrichten.
  4. Bei ACME: Timer oder Cronjob per Heartbeat überwachen und einen Deploy-Hook zum Neuladen des Servers setzen.
  5. Einmal pro Quartal certbot renew --dry-run (oder das Pendant Ihres Clients) laufen lassen.
  6. Vor Umzügen und DNS-Änderungen das Zertifikat auf dem Ziel prüfen.
  7. CAA-Einträge dokumentieren und bei CA-Wechsel anpassen.
  8. Auch die Kette und die Hostnamen prüfen, nicht nur das Datum.

Grenzen und Einordnung

Eine Zertifikatsüberwachung sieht, was das Zertifikat am geprüften Endpunkt zeigt. Sie sieht nicht, ob an einem anderen Ort, etwa hinter einem Load Balancer mit mehreren Backends, ein Zertifikat abweicht. Auch interne Dienste ohne Zugang aus dem Internet lassen sich von außen nicht prüfen. Und eine bestandene Prüfung heißt nicht, dass die TLS-Konfiguration insgesamt optimal ist: Cipher-Auswahl, Protokollversionen oder Zertifikatstransparenz bewertet ein einfacher Ablaufmonitor nicht.

Außerdem gilt: Ein Monitor warnt, er erneuert nicht. Die Behebung bleibt Ihre Aufgabe oder die Ihres Hosters. Er verkürzt nur die Zeit zwischen „es wird eng“ und „wir handeln“. Wie die Messung grundsätzlich funktioniert und wo ihre Grenzen liegen, erklärt Grenzen automatischer Website-Prüfungen.

Wie setzen Sie das mit UPTIMESHIELD um?

Der SSL-Zertifikat-Monitor prüft strikt Kette und Hostname und zeigt die Restlaufzeit in Tagen. Die Warnungen gehen 30, 14, 7, 3 und 1 Tag vor Ablauf an Ihre Benachrichtigungskanäle; solange das Zertifikat bald abläuft, steht der Status auf „Beeinträchtigt“. Ein ungültiges, abgelaufenes oder zum Namen unpassendes Zertifikat zählt als Fehlschlag. Die Details zu dieser Prüfart finden Sie auf der Seite SSL-Überwachung und im Überblick der Monitortypen.

Empfohlenes Vorgehen: Legen Sie ein kostenloses Solo-Konto an, erstellen Sie für jeden öffentlichen Hostnamen einen SSL-Monitor und verbinden Sie mindestens zwei Benachrichtigungskanäle (bei E-Mail mit bestätigter Adresse). Den Erneuerungs-Cronjob überwachen Sie zusätzlich mit einem Heartbeat-Monitor, siehe Cronjobs mit Heartbeat überwachen. Eine erste Einschätzung ohne Konto liefert die Sofortprüfung im Uptime Checker, die auch die Restlaufzeit anzeigt.

Quellen und weiterführende Standards

Externe Links führen zu den Original-Spezifikationen und offiziellen Dokumentationen. Die Einordnung und die Beispielrechnungen stammen aus der Messmethodik von UPTIMESHIELD.

Selbst prüfen: Testen Sie jetzt, ob Ihre Website erreichbar ist und wie schnell sie antwortet – mit dem Uptime Checker.

Häufige Fragen zum Thema

Wie finde ich heraus, wann mein SSL-Zertifikat abläuft?
Im Browser über das Schloss-Symbol und die Zertifikatsdetails, per Kommandozeile mit openssl s_client und openssl x509 -noout -dates oder bequem per SSL-Monitor, der die Restlaufzeit dauerhaft anzeigt und rechtzeitig warnt.
Wie lange vor Ablauf sollte ich ein Zertifikat erneuern?
Bei 90-Tage-Zertifikaten mit ACME üblicherweise etwa 30 Tage vorher, automatisch. Bei manueller Erneuerung sollten Sie mindestens 14 Tage Vorlauf einplanen, damit Prüfung und Einspielen nicht in Zeitnot geraten.
Warum zeigt der Browser trotz erneuertem Zertifikat noch eine Warnung?
Häufig wurde der Webserver nicht neu geladen und liefert das alte Zertifikat weiter aus, oder die Kette ist unvollständig. Prüfen Sie mit openssl s_client, welches Zertifikat der Server tatsächlich ausliefert.
Deckt ein Wildcard-Zertifikat auch die Hauptdomain ab?
Nein, ein Zertifikat für *.example.com gilt für Subdomains wie www.example.com, aber nicht für example.com selbst. Beide Namen müssen im Zertifikat stehen.
Prüft UPTIMESHIELD Zertifikate automatisch mit Alarm?
Ja. Der SSL-Monitor warnt 30, 14, 7, 3 und 1 Tag vor Ablauf über die eingerichteten Kanäle. Voraussetzung sind ein Konto, ein Monitor und ein Alarmkanal.
Reicht ein HTTP-Monitor, um Zertifikatsprobleme zu erkennen?
Ein HTTP/HTTPS-Monitor schlägt bei einem bereits abgelaufenen oder ungültigen Zertifikat fehl. Er warnt aber nicht vorher. Dafür ist der SSL-Zertifikat-Monitor mit seinen Vorwarnstufen da.