"Ihre Verbindung ist nicht privat": woher dieser Fehler kommt
Chrome zeigt NET::ERR_CERT_DATE_INVALID, Firefox meldet SEC_ERROR_EXPIRED_CERTIFICATE, und wer die Domain per curl anspricht, sieht schlicht SSL certificate problem: certificate has expired. Alle drei Meldungen sagen dasselbe: Das Zertifikat, das der Server ausliefert, gilt aus Sicht des Browsers nicht mehr, oder nie. Genau in diesem Moment landen die meisten Nutzer auf dieser Seite, meist mit der Domain schon in der Zwischenablage.
Der Checker baut eine echte TLS-Verbindung zu Ihrer Domain auf und liest das ausgelieferte Zertifikat aus, so wie es jeder Browser auch tut. Das Ergebnis zeigt Ihnen, ob es sich um ein Ablaufproblem handelt, einen falschen Hostnamen, eine unvollständige Kette oder etwas anderes.
Was genau geprüft wird
- Gültigkeitszeitraum: Ausstellungsdatum und Ablaufdatum. Ab etwa 30 Tagen vor Ablauf sollten Sie sich um eine Verlängerung kümmern.
- Restlaufzeit in Tagen: besonders relevant bei Let's Encrypt, dessen Zertifikate standardmäßig nur 90 Tage gelten.
- Aussteller: Let's Encrypt, DigiCert, Sectigo, GlobalSign, Google Trust Services und andere Zertifizierungsstellen (CAs).
- Common Name und Subject Alternative Names (SAN): für welche Hostnamen das Zertifikat überhaupt gültig ist. Mehrere Domains in einem Zertifikat sind mittlerweile Standard.
- Schlüssellänge und Algorithmus: RSA mit 2048 oder 4096 Bit, oder ein moderner ECDSA-Key (P-256/P-384).
- Signaturalgorithmus: SHA-256 gilt als sicher, SHA-1 ist veraltet und wird von aktuellen Browsern nicht mehr akzeptiert.
- Zertifikatskette: ob die notwendigen Intermediate-Zertifikate mitgeliefert werden.
Die häufigsten Ursachen hinter der Fehlermeldung
In der Praxis lassen sich fast alle Zertifikatsfehler auf eine Handvoll Ursachen zurückführen.
Ablauf, weil niemand zuständig war
Der Klassiker. Ein Zertifikat wurde manuell installiert, die Erinnerung ging unter, und irgendwann läuft es ab. Automatisiertes Renewal mit certbot, acme.sh oder integriert in Caddy verhindert das dauerhaft.
Falscher Hostname
Das Zertifikat gilt für www.example.com, aufgerufen wird aber example.com ohne www, oder eine Subdomain, die im Zertifikat gar nicht gelistet ist. Abhilfe schafft ein Wildcard-Zertifikat (*.example.com) oder ein SAN-Eintrag für jeden verwendeten Hostnamen.
Fehlende Zwischenzertifikate
Manche Browser, vor allem mobil, bringen die Intermediate-Zertifikate nicht selbst mit. Liefert Ihr Server nur das Endzertifikat aus, bricht die Validierung ab. Nginx und Apache erwarten die vollständige Kette in einer einzigen Datei.
Gemischte Inhalte und veraltete Protokolle
Lädt eine HTTPS-Seite Bilder oder Skripte über einfaches HTTP, blockieren moderne Browser das teilweise. Ähnlich kritisch: Server, die noch TLS 1.0 oder 1.1 akzeptieren, fallen bei PCI- und BSI-Audits durch. TLS 1.2 sollte das Minimum sein, TLS 1.3 der Standard.
Welcher Zertifikatstyp passt zu Ihrem Projekt?
- DV (Domain Validation): nur die Domain wird geprüft. Kostenlos über Let's Encrypt, ausreichend für Blogs und kleine Webseiten.
- OV (Organization Validation): die Firma wird zusätzlich verifiziert, Firmendaten stecken im Zertifikat. Üblich für Business-Websites.
- EV (Extended Validation): aufwändigste Prüfung. Die früher grüne Adressleiste gibt es nicht mehr, die Detailinformationen im Zertifikat bleiben aber vorhanden.
- Wildcard: deckt alle Subdomains einer Ebene ab (
*.example.com), sinnvoll bei vielen wechselnden Subdomains. - Multi-Domain (SAN): mehrere unterschiedliche Domains in einem einzigen Zertifikat.
Checkliste, damit das Problem nicht wiederkehrt
- Auto-Renewal einrichten, etwa über Certbot, acme.sh oder Caddy.
- Ein einfaches Monitoring aufsetzen, das 30 Tage vor Ablauf eine Warnung schickt, sei es über Uptime-Robot oder ein eigenes Cron-Skript.
- HSTS aktivieren, damit wiederkehrende Besucher automatisch HTTPS erzwingen.
- Einen CAA-DNS-Record setzen, der festlegt, welche Zertifizierungsstelle für Ihre Domain ausstellen darf.
- Gelegentlich einen Blick in die Certificate-Transparency-Logs werfen (crt.sh), um unautorisiert ausgestellte Zertifikate zu bemerken.
Datenschutz
Der Check öffnet eine TLS-Verbindung zum angefragten Server und liest ausschließlich das öffentlich ausgelieferte Zertifikat. Es werden keine sensiblen Daten übertragen, und die Ergebnisse speichern wir nicht.