TLS-Zertifikat
Was geprüft
Ausgewertet wird das Zertifikat der HTTPS-Antwort: Prüfung durch anerkannte Zertifizierungsstellen, Hostname, Gültigkeitszeitraum und mitgelieferte Zertifikatskette. Abgelaufen, noch nicht gültig, falscher Hostname, selbstsigniert oder aus anderem Grund nicht anerkannt ergibt Kritisch; fehlt das Zwischenzertifikat, ist das ein eigener auffälliger Punkt (Mittel). Läuft das Zertifikat in höchstens 7 Tagen ab, ist das Hoch, in höchstens 21 Tagen Niedrig.
Wie relevant
Kritisch bei einem ungültigen Zertifikat, weil Browser die Seite dann mit einer Warnseite blockieren; das begrenzt die Kategorie auf höchstens 49 von 100. Mittel bei unvollständiger Kette, weil manche Browser das Zwischenzertifikat selbst ergänzen, andere Programme aber abbrechen. Hoch beziehungsweise Niedrig bei nahem Ablauf, weil die automatische Verlängerung dann offenbar nicht greift.
Warum
Ein ungültiges Zertifikat zeigt Besuchern eine ganzseitige Warnung; viele Besucher brechen dort ab. Suchmaschinen-Crawler, Zahlungsdienste, Webhooks und Apps verweigern die Verbindung ganz. Eine unvollständige Kette fällt oft erst auf, wenn ein Partnerdienst keine Verbindung mehr bekommt.
Wie beheben
Lassen Sie das Zertifikat über Ihren Hoster oder einen ACME-Client automatisch verlängern und prüfen Sie, ob die Verlängerung tatsächlich läuft. Das Zertifikat muss alle genutzten Hostnamen enthalten, in der Regel beispiel.de und www.beispiel.de. Liefern Sie die vollständige Kette aus (Datei fullchain.pem statt cert.pem).
Nebenwirkung: Nach dem Tausch der Zertifikatsdatei braucht der Webserver einen Reload, sonst liefert er weiter das alte Zertifikat. Ein CAA-Eintrag im DNS kann die Ausstellung bei einer anderen Zertifizierungsstelle verhindern (siehe Prüfung „CAA“). Testen Sie danach mit openssl s_client, ob Kette und Hostname stimmen.
WordPress: Bei verwalteten WordPress-Hostern verlängert der Hoster das Zertifikat. Läuft es trotzdem ab, liegt die Ursache oft in einer umgezogenen DNS-Zone oder einem fehlenden www-Eintrag, sodass die Validierung scheitert.
Codebeispiel
Prüfen mit openssl
openssl s_client -connect beispiel.de:443 -servername beispiel.de -showcerts </dev/null
# Ablaufdatum anzeigen
openssl s_client -connect beispiel.de:443 -servername beispiel.de </dev/null 2>/dev/null | openssl x509 -noout -enddateApache (ab 2.4.8, vollständige Kette)
SSLCertificateFile /etc/letsencrypt/live/beispiel.de/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/beispiel.de/privkey.pemnginx (vollständige Kette)
ssl_certificate /etc/letsencrypt/live/beispiel.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/beispiel.de/privkey.pem;Weiterführende Quellen
Quellen der Methodik
docs/SCORING.md— Status und Schweregrade (§2), Kategoriescore und Abdeckung (§3), Gesamtwert (§4), keine Doppelabzüge (§5), Prüfkatalog mit Gewichten (§6), Versionierung (§8), Formulierungsregeln (§9), bewusst nicht geprüft (§10)docs/KALIBRIERUNG.md— Abgleich der Schwerefaktoren und Kappen mit externen Ankern (Web Almanac, Lighthouse, MDN HTTP Observatory, SSL Labs), Entscheidung scoring@1.4.0