In einem Fall konnte von einem Server nicht auf die SSL geschützte Webseite eines anderen Servers zugegriffen werden. Die Standardfehler wie unvertrautem Zertifikat, fehlerhafte IE Einstellungen konnten ausgeschlossen werden. Daher blieb nur der beherzte Griff zum Netzwerkmonitor und Google.
Mit Unterstützung dieses Artikels (
http://blogs.msdn.com/b/sudeepg/archive/2009/02/16/debugging-ssl-handshake-failure-using-network-monitor-a-scenario.aspx) konnte der eigentliche SSL Fehler aus dem Mitschnitt ermittelt werden:
Der letzte Hex Wert (blau hinterlegt, 28 = Dez 40) ist der Fehlercode:
handshake_failure(40)
Laut RFC:
handshake_failure
Reception of a handshake_failure alert message indicates that the
sender was unable to negotiate an acceptable set of security
parameters given the options available. This is a fatal error.
D.h. der Client und Server konnten sich nicht auf einen gemeinsamen Hash- bzw. Verschlüsselungsalgorithmus einigen. Mit Hilfe diese Information konnte dann die Registry genauer untersucht werden. Unter Hashes war SHA abgeschaltet:
CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\SHA
mit
Enabled=0
Sobald dieser Key gelöscht wurde, war der Zugriff wieder möglich.