Per verificare i dettagli del certificato SSL, utilizzo il seguente strumento da riga di comando da quando è diventato disponibile:
https://github.com/azet/tls_tools
È ottimo per ricontrollare che tutte le informazioni sono corrette per la riemissione di certificati o per la convalida di quelli esistenti, e anche come poche dipendenze E non richiede alcuna configurazione.
Ecco come appaiono le prime righe dell'output:
$ ./check_certificate_chain.py gnupg.org 443
>> Certificate Chain:
[+]* OU=Domain Control Validated, OU=Gandi Standard SSL, CN=gnupg.org
[+]** C=FR, O=GANDI SAS, CN=Gandi Standard SSL CA
[+]*** C=US, ST=UT, L=Salt Lake City, O=The USERTRUST Network, OU=http://www.usertrust.com, CN=UTN-USERFirst-Hardware
>> Certificate Information:
................................................................................
- [Subject]: OU=Domain Control Validated, OU=Gandi Standard SSL, CN=gnupg.org
- [Issuer]: C=FR, O=GANDI SAS, CN=Gandi Standard SSL CA
- [Valid from]: Mar 18 00:00:00 2014 GMT
- [Valid until]: Mar 18 23:59:59 2016 GMT
- [Authority]: Is not a CA
- [Version]: 2
- [Serial No.]: 43845251655098616578492338727643475746
- [X.509 Extension Details]:
-- [x509_authorityKeyIdentifier]:
keyid:B6:A8:FF:A2:A8:2F:D0:A6:CD:4B:B1:68:F3:E7:50:10:31:A7:79:21
Tale output è seguito da tutta la catena di certificati con lo stesso livello di dettaglio.
Quello che mi piace, invece di essere uno strumento di cli ssl-centrico come il client di openssl, questo cerca di fare solo il lavoro di cui abbiamo bisogno la maggior parte del tempo. Ovviamente openssl è più flessibile (ovvero controlla anche i client, gli imap su porte dispari, ecc.) - ma non sempre ne ho bisogno.
In alternativa, se hai tempo per scavare e configurare o apprezzare più funzionalità, c'è lo strumento più grande chiamato sslyze (non lo utilizza da dipendenze e installazione ...)