Answers:
假设您的证书采用PEM格式,则可以执行以下操作:
openssl verify cert.pem
如果您的“ ca-bundle”是包含PEM格式的其他中间证书的文件:
openssl verify -untrusted ca-bundle cert.pem
如果未将openssl设置为自动使用一组已安装的根证书(例如,中的/etc/ssl/certs
),则可以使用-CApath
或-CAfile
指定CA。
-CApath nosuchdir
则server.crt和cacert.pem的组合必须包含根CA;否则,请参见第4章。如果openssl只能与这些文件一起工作到中间CA,则它将抱怨。
/certs/
。这会引起问题吗?因为即时通讯在我的服务器可以工作的情况下堆叠在一起,所以http curl可以工作,但是https .. curl会出错。网站停止工作的地方。
这是验证证书链的一种方法:
openssl verify -verbose -x509_strict -CAfile ca.pem -CApath nosuchdir cert_chain.pem
这不需要在任何地方安装CA。
有关详细信息,请参见https://stackoverflow.com/questions/20409534/how-does-an-ssl-certificate-chain-bundle-work。
-CApath nosuchdir
将此添加为答案。谢谢。
-CAfile
本身只是一个中间证书,则openssl会抱怨。这是正确的行为,因为verify
直到根CA 一直都需要完整的链,但是这可能会产生误导。
OpenSSL 1.1.1 11 Sep 2018
)要求参数-CApath
必须是现有目录。
openssl x509
手册部分。