Sto cercando di convalidare / verificare che la chiave rsa, il ca-bundle e il certificato memorizzati qui siano corretti. Non vengono serviti da un server web. Come posso verificarli?
Sto cercando di convalidare / verificare che la chiave rsa, il ca-bundle e il certificato memorizzati qui siano corretti. Non vengono serviti da un server web. Come posso verificarli?
Risposte:
Supponendo che i certificati siano in formato PEM, puoi fare:
openssl verify cert.pem
Se il "ca-bundle" è un file contenente certificati intermedi aggiuntivi in formato PEM:
openssl verify -untrusted ca-bundle cert.pem
Se openssl non è configurato per utilizzare automaticamente un set installato di certificati radice (ad es. In /etc/ssl/certs
), è possibile utilizzare -CApath
o -CAfile
specificare la CA.
-CApath nosuchdir
la combinazione di server.crt e cacert.pem deve includere la CA principale; se openssl può funzionare solo con una CA intermedia con quei file, allora si lamenterà.
/certs/
. questo causerà un problema? perché sono impilato in una situazione in cui il mio server funziona, http curl funziona, ma https .. curl ottiene un errore. dove il sito web ha smesso di funzionare.
Ecco una riga per verificare una catena di certificati:
openssl verify -verbose -x509_strict -CAfile ca.pem -CApath nosuchdir cert_chain.pem
Ciò non richiede l'installazione di CA da nessuna parte.
Vedi https://stackoverflow.com/questions/20409534/how-does-an-ssl-certificate-chain-bundle-work per i dettagli.
-CApath nosuchdir
per rispondere. Grazie.
-CAfile
è esso stesso solo un certificato intermedio, allora openssl si lamenterà. Questo è un comportamento corretto, poiché verify
richiede una catena completa fino a una CA principale, ma può essere fuorviante.
OpenSSL 1.1.1 11 Sep 2018
) richiede che l'argomento -CApath
sia una directory esistente.
openssl x509
sezione manuale.