"tlsv1 alert unknown ca" 使用新的 SSL 证书时出错

"tlsv1 alert unknown ca" error when using new SSL certificates

我正在使用来自 Digicert 的 SSL/TLS 证书配置 emqtt MQTT Broker。几年前,我为同一个代理完成了 SSL 配置,一切正常。但是当我使用新证书配置新代理安装时,出现“未知 CA”错误。

这是 SSL 设置:

mqtt.listener.ssl.keyfile = etc/certs/prod.key 
mqtt.listener.ssl.certfile = etc/certs/server.crt
mqtt.listener.ssl.cacertfile = etc/certs/DigiCertCA.crt

这是我在服务器日志中看到的错误:

[error] <0.27032.0> SSL: certify: ssl_alert.erl:97:Fatal error: unknown ca

这可能是新 CA 证书的问题吗?也许它需要链中的更多依赖证书?

更新 这似乎是 OS issue.I 当我在服务器中使用“openssl verify”测试证书时出现以下错误:

error 2 at 1 depth lookup:unable to get issuer certificate

使用相同的命令和相同的证书在我的本地 PC 上验证成功

我使用“yum update ca-certificates”更新了 OS 根证书,但我仍然遇到同样的错误

我找到了根本原因。基本上我错过了使用链中的一个 CA 证书。我拥有的 CA 证书还不够。所以我将丢失的 CA 证书附加到我使用的 CA 文件中。我只是为此使用了 'cat' 命令。