grpc++ 中的 SSL 握手错误 (CERTIFICATE_VERIFY_FAILED)

Posted

技术标签:

【中文标题】grpc++ 中的 SSL 握手错误 (CERTIFICATE_VERIFY_FAILED)【英文标题】:SSL handshake error (CERTIFICATE_VERIFY_FAILED) in grpc++ 【发布时间】:2019-01-28 09:54:22 【问题描述】:

我无法更改 grpc speech recognition 应用程序使用的 SSL 证书。

我需要更改证书,因为我处于监控所有 HTTPS 流量并使用不同于默认证书的安全网络中。

在运行上述语音识别示例时,我得到的错误是

E0128 15:20:51.191576608    7156 ssl_transport_security.cc:1233] Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED

我试图找到可以更改 SSL 证书并放置 XYZ 框架提供的证书的位置。我有 XYZ.pem 证书文件,我将其放入 \etc\ssl\certs 但没有任何改变。

有人可以帮我解决这个问题吗?

【问题讨论】:

【参考方案1】:

这解决了我的问题。

只需转到/etc/ssl/certs 并找到ca-bundles.pem 指向的位置。

转到文件ca-bundles.pem(对我来说它在/var/lib/ca-certificates/ca-bundles.pem)并通过从.pem文件中复制来手动添加您的证书。

保存更改并运行测试。 :)

【讨论】:

以上是关于grpc++ 中的 SSL 握手错误 (CERTIFICATE_VERIFY_FAILED)的主要内容,如果未能解决你的问题,请参考以下文章

GRPC Java客户端和NodeJS服务器之间的ssl握手问题

为 SSL / TLS 配置 Proton 引发 openssl 错误版本号和 gRPC 客户端错误

PL/SQL 中的 Oracle DBMS_LDAP.open_ssl 显示错误:ORA-31202:SSL 握手失败

Xcode gRPC-Core 错误:找不到“openssl_grpc/ssl.h”文件

android中的SSL握手失败

SSL 错误握手错误 10054“WSAECONNRESET”