Esiste un bug OpenSSL noto in cui s_client non controlla l'archivio certificati predefinito quando non si passa l'argomento -CApath
o -CAfile
. OpenSSL su Ubuntu 14.04 soffre di questo bug come dimostrerò:
Versione:
ubuntu@puppetmaster:/etc/ssl$ openssl version
OpenSSL 1.0.1f 6 Jan 2014
Non riesco a utilizzare l'archivio predefinito quando non passo "-ca:
ubuntu@puppetmaster:/etc/ssl$ openssl s_client -quiet -connect gmail.com:443
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify error:num=20:unable to get local issuer certificate
verify return:0
Ora passo null come -CApath
e funziona:
ubuntu@puppetmaster:/etc/ssl$ openssl s_client -quiet -connect gmail.com:443 -CApath /dev/null
depth=3 C = US, O = Equifax, OU = Equifax Secure Certificate Authority
verify return:1
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify return:1
depth=1 C = US, O = Google Inc, CN = Google Internet Authority G2
verify return:1
depth=0 C = US, ST = California, L = Mountain View, O = Google Inc, CN = mail.google.com
verify return:1
Purtroppo non penso che esista un elenco di versioni OpenSSL interessate. L'unico modo per saperlo è testarlo.