OpenSSL und so

OpenSSL ist beständiger Quell der Verzweiflung für alle Netzwerk-Programmierer und Admins. Noch steigern lässt sich der Spaß aber mit zwei parallel installierten OpenSSL-Versionen (unter BSD häufig anzutreffen, weil das OS noch v0.9.x mitbringt und man sich dann ein v1.0.x aus den Ports dazuinstalliert).

Mit der Kombination musste ich letztens feststellen dass sich das benutzte Hash-Verfahren für X.509-Zertifikate änderte:

> /usr/bin/openssl version ; 
/usr/local/bin/openssl version
OpenSSL 0.9.8q 2 Dec 2010
OpenSSL 1.0.0d 8 Feb 2011
> /usr/bin/openssl x509 -noout -hash -in astaca.pem ; 
/usr/local/bin/openssl x509 -noout -hash -in astaca.pem
a3a544f7
aff0606f

Das führte dann dazu dass eine Anwendung meine (im CApath-format hinterlegte) CA nicht benutzen wollte, obwohl beim ausführlichsten Test mit openssl {verify,s_client|s_server} alles bestens funktionierte. :-/

Als eigentliches Problem entpuppte sich letztlich ein falscher $PATH:

> which openssl
/usr/bin/openssl

Der insofern ‘falsch’ ist als dass die Anwendung halt gegen die nachinstallierte v1.0 in /usr/local gelinkt ist. Aber darauf muss man erstmal kommen… ein Test mit /usr/local/bin/openssl verify hätte echt viel Zeit gespart.

Comments are closed.