Openssl:错误“证书链中的自签名证书”

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Openssl:错误“证书链中的自签名证书”相关的知识,希望对你有一定的参考价值。

当我使用openssl API验证服务器证书(自签名)时,我收到以下错误:

错误19在1深度查找:证书链中的自签名证书

根据openssl documentation,这个错误(19)是

“X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN:证书链中的自签名证书 - 可以使用不受信任的证书构建证书链,但无法在本地找到根证书。”

为什么会出现此错误?我的服务器证书有问题吗?

答案

您有一个自签名的证书,因此默认情况下它不受信任,这就是OpenSSL抱怨的原因。这个警告实际上是一件好事,因为这种情况也可能因man-in-the-middle attack而上升。

要解决此问题,您需要将其安装为受信任的服务器。如果它由不受信任的CA签名,您还必须安装该CA的证书。

看看this link有关安装自签名证书的信息。

另一答案

这是验证证书链的单行程序:

openssl verify -verbose -x509_strict -CAfile ca.pem cert_chain.pem

这不需要在任何地方安装CA.

有关详细信息,请参阅How does an SSL certificate chain bundle work?

另一答案

该错误的解决方案是在代码顶部添加此行:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";

以上是关于Openssl:错误“证书链中的自签名证书”的主要内容,如果未能解决你的问题,请参考以下文章

Heroku 登录错误:证书链中的自签名证书

Ionic Cordova 资源错误:证书链中的自签名证书

SSL证书问题:证书链中的自签名证书

Curl 错误 60,SSL 证书问题:证书链中的自签名证书

错误:节点 js 应用程序中证书链中的自签名证书

防病毒软件正在阻止 nodemailer - 错误:证书链中的自签名证书