
Jemand sagt Ihnen, Ihre Seite lade nicht, und schickt einen Code mit: ERR_SSL_PROTOCOL_ERROR.
Bei Ihnen funktioniert sie. Bei allen im Büro funktioniert sie. Die Seite, die diese Person vor
sich hat, ist grau, enthält etwa zwei Sätze und bietet sonst nichts.
Hier ist Chromiums eigene Beschreibung dieses Fehlers, aus der Datei, in der jeder Netzwerkfehler in Chrome definiert ist:
An SSL protocol error occurred.
Das ist der ganze Kommentar. Fünf Wörter, für die Fehlernummer -107. Es ist keine gekürzte Fassung von etwas Längerem; es ist alles, was der Browser hat.
Es ist der Code, den Chrome nimmt, wenn es nicht genauer werden kann
Warum das wichtig ist, zeigt sich an dem, was in derselben Liste darum herum steht.
Ein paar Zeilen weiter steht ERR_SSL_VERSION_OR_CIPHER_MISMATCH, Nummer -113, und seine
Beschreibung ist präzise: “The client and server don’t support a common SSL protocol version or
cipher suite.” Noch weiter folgt ein ganzer Bereich für Zertifikate, in dem
ERR_CERT_COMMON_NAME_INVALID, Nummer -200, vier benannte Ursachen trägt, darunter jene, bei der
die Person in einem WLAN sitzt und auf die Anmeldeseite des Netzwerks umgeleitet wird.
Chrome hat also genauere Codes für die Fehler, die es zuordnen kann. Wenn stattdessen -107 kommt, heißt das: Der Handshake ist auf eine Weise gescheitert, für die der Browser keinen Namen hatte.
Das ist das Gegenteil davon, wie dieser Fehler normalerweise behandelt wird. Jede Anleitung dazu ist eine Liste von acht Dingen, die man probieren soll, und die Länge der Liste ist der Hinweis: Niemand, der so eine Liste schreibt, weiß, welches der acht Dinge zutrifft, weil der Fehler es nicht sagt.
Was wirklich scheitert, und wie wenig davon Ihnen gehört
Cloudflares eigene Fehlersuche-Seite zu diesem Fehler führt auf, was sie dahinter sehen. Ihre Zusammenfassung lautet, dass der Handshake gescheitert ist, und die Gründe, die sie nennen, sind:
- Ein Zertifikatsproblem, etwa ein Zertifikat, das noch nicht aktiv ist, oder eine Subdomain über mehrere Ebenen, die das vorhandene Zertifikat nicht abdeckt.
- Eine nicht passende Cipher Suite, wobei, in ihren Worten, ältere Clients moderne Cipher Suites möglicherweise nicht unterstützen.
- HTTP/3 und QUIC, die blockiert werden, von einem Netzwerk, einer Firewall oder einem Gerät, das QUIC über UDP nicht durchlässt.
- TLS 1.3, das von Netzwerk-Sicherheitsgeräten mit SSL-Inspektion nicht vollständig unterstützt wird.
- Störungen im Netzwerk: Deep Packet Inspection, abfangende Proxys, Kinderschutzfilter, Carrier-Grade NAT.
Das ist die Sicht eines CDN aus seiner eigenen Support-Warteschlange und keine vollständige Systematik, und es ist trotzdem die nützlichste verfügbare Liste, wegen der Art, wie sie sich aufteilt.
Zählen Sie nach, wem jeder Punkt gehört. Der erste gehört Ihnen. Der zweite gehört dem Browser oder dem Betriebssystem der meldenden Person. Der dritte, vierte und fünfte gehören Geräten und Software zwischen ihr und Ihnen: ihrem Router, der Inspektions-Appliance ihrer Firma, ihrem Virenscanner, ihrem Internetanbieter.
Einer von fünf liegt auf Ihrer Seite, und der Fehlertext ist bei allen identisch.
Weshalb die Meldung unbrauchbar ankommt
“Ihre Seite ist kaputt, ERR_SSL_PROTOCOL_ERROR” ist eine vollständige Beschreibung dessen, was die meldende Person sehen kann, und sagt Ihnen fast nichts. Die naheliegende nächste Frage, ob es nur sie betrifft, ist genau die, die Sie von Ihrem Platz aus nicht beantworten können: Ihr Rechner hängt in einem anderen Netz, hinter anderer Hardware, mit anderer Sicherheitssoftware, und verhandelt womöglich mit einem anderen Edge-Knoten.
Das ist dasselbe Problem wie Ihren Fehler von der Störung eines anderen zu unterscheiden, und es hat dieselbe Eigenschaft: Der Beweis, der es klären würde, existiert nur auf deren Rechner und nur, solange es passiert.
Es ist nicht die Zertifikatswarnung, und der Unterschied ist groß
Wenn die meldende Person eine rote Seite beschreibt, die sie warnt, die Verbindung sei nicht
privat, mit einem Code, der mit ERR_CERT_ beginnt, dann ist das ein anderer Fehler und ein weit
handlicherer: Diese Codes nennen ihren Grund, und
welcher der fünf es ist lässt sich in einer Minute klären.
ERR_SSL_PROTOCOL_ERROR hat keine solche Seite und keinen solchen Grund. Es lohnt sich
festzustellen, welchen der beiden sie tatsächlich gesehen hat, bevor Sie einen Nachmittag mit dem
falschen verbringen, und der schnellste Weg ist, um den Screenshot zu bitten statt um die
Beschreibung.
Die zwei Tests, die den Raum aufteilen
Cloudflares Seite beendet den eigenen Rat mit dem Hinweis, Diagnosedaten von betroffenen Besuchern zu sammeln, und das ist die ehrliche Form der Antwort. Davor gibt es zwei Dinge, die eine meldende Person in einer Minute tun kann und die mehr eingrenzen als alles, was Sie selbst ausführen können.
Bitten Sie sie, es über mobile Daten zu versuchen, mit abgeschaltetem WLAN. Lädt die Seite dann, liegt das Problem zwischen ihrem Netz und Ihnen, und keine Änderung auf Ihrem Server wird es für sie beheben. Scheitert es weiterhin, ist ihr Netz nicht die Ursache.
Bitten Sie sie, einen anderen Browser auf demselben Rechner zu versuchen. Lädt die Seite dort, liegt die Ursache bei ihrem Browser: seiner Protokollunterstützung, seinem eigenen Zertifikatsspeicher oder einer Erweiterung, die davor sitzt. Scheitert es in beiden, ist der Rechner oder sein Netz beteiligt und nicht der Browser.
Diese zwei Antworten decken zusammen vier der fünf Ursachen oben ab und kosten die meldende Person
etwa neunzig Sekunden. Was Sie daneben notiert haben wollen: die vollständige URL, ob http oder
https eingegeben wurde, den genauen Code, die Zeit und ob zur selben Minute noch etwas anderes
ausfiel.
Der Fall, der Ihrer ist und nach ihrem aussieht
Ein Muster ist es wert, bekannt zu sein, weil es genau diesen Fehler auf Ihrer Seite erzeugt und
dabei wie ein Client-Problem aussieht. Ein Zertifikat, das gültig, aber noch nicht aktiv ist,
weil sein Startdatum in der Zukunft liegt, lässt den Handshake scheitern statt eine Warnseite zu
erzeugen, und es scheitert bei allen, deren Uhr richtig geht. Dasselbe gilt für einen Host, der
eine Ebene tiefer liegt als das Zertifikat abdeckt: app.eu.example.com gegen ein Zertifikat für
*.example.com ist nicht abgedeckt, denn ein einzelnes Wildcard passt auf ein Label.
Beides ist Ihre Baustelle, beides kommt als dieser Fehler an, und keines der beiden ist von einem Middlebox-Problem zu unterscheiden, ohne das Zertifikat zu prüfen, das Ihr Edge tatsächlich ausliefert.
Session Replay
Kostenlose Chrome-Erweiterung. Ein Klick auf die Seite, die Probleme macht, erfasst den Screenshot, die Konsole und das Netzwerkprotokoll und liefert Ihnen einen Link zum Einfügen in das Ticket.
Was davon zu behalten ist
ERR_SSL_PROTOCOL_ERROR ist keine Diagnose. Es ist deren Abwesenheit, und Chromium sagt genau
das in fünf Wörtern. Nehmen Sie es als die Auskunft des Browsers, dass ein Handshake gescheitert
ist und er nicht herausfinden konnte, warum, und stecken Sie Ihre Mühe dann in die zwei Fragen,
die die Ursachen aufteilen, statt in die Liste von acht Behebungen, von denen sieben ohnehin nie
zutreffen konnten.