openssl s_client -connect some.https.server:443 -showcerts
ist ein netter Befehl, der ausgeführt werden soll, wenn Sie die Zertifikate des Servers und seine Zertifikatkette überprüfen möchten.
Gibt es eine Möglichkeit, diesen Befehl auszuführen, wenn Sie sich hinter einem HTTP / HTTPS-Proxy befinden?
Sie können Proxy-Tunnel verwenden :
und dann können Sie dies tun:
Hoffe das kann dir helfen!
quelle
proxytunnel -p yourproxy:8080 -d www.google.com:443 -a 7000
im Hintergrund laufen, um das Terminal für den zweiten Befehl freizugeben.proxytunnel
unterstützt die Proxy-Authentifizierung, was (afaict)openssl s_client -proxy
nicht tut, zumindest nicht in 1.1.0h.Für alle, die nach Mai 2015 hierher kommen: Es gibt eine neue "-proxy" -Option, die in der nächsten Version von openssl enthalten sein wird: https://rt.openssl.org/Ticket/Display.html?id=2651&user= Gast & Pass = Gast
quelle
seit openssl v1.1.0
quelle
-proxy
Option nicht bemerkt , aber ich frage mich, ob stattdessen Proxy-Envvars in Betracht gezogen werden sollten.Selbst mit openssl v1.1.0 hatte ich einige Probleme beim Übergeben unseres Proxys, z. B.
s_client: HTTP CONNECT failed: 400 Bad Request
zwang mich dies, eine minimale Java-Klasse zu schreiben, um den SSL-Handshake anzuzeigenMit folgender Abhängigkeit:
Sie können es mit aktivierter Java SSL-Protokollierung ausführen
Dies sollte eine schöne Ausgabe wie erzeugen
quelle