小编Gla*_*sse的帖子

OpenSSL无法获得本地颁发者证书返回码20

每当我尝试使用OpenSSL使用以下命令连接到Google(或任何其他站点)时:

s_client -connect google.com:443 -showcerts
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

.....

验证返回码:20(无法获得本地颁发者证书)

我确实安装了正确的CA. 我也尝试导出CA并将其与-CAfile一起使用,但我仍然得到相同的错误.

我使用certmgr.msc将CA导出为PKCS#12.然后我使用以下方法将它们转换为.pem文件:

OpenSSL> pkcs12 -in D:/Certs/RootCertsNewu.pfx -clcerts -nokeys -out D:/Certs/Roo
tCertsNew.pem
Run Code Online (Sandbox Code Playgroud)

使用它我试图连接:

OpenSSL> s_client -connect google.com:443 -CAfile D:\Certs\RootCertsNew.pem
Run Code Online (Sandbox Code Playgroud)

但我得到了和以前一样的回应.我还读到,这可能与中级CA有关,所以我用CA和中间CA创建了一个.pem文件.那也行不通.有人能帮我吗?

此外,验证进展似乎始于GeoTrust,而不是Equifax.

OpenSSL> s_client -connect google.com:443 -showcerts -CAfile D:\Certs\google-ca.
pem
Loading 'screen' into random state - done
CONNECTED(0000017C)
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Run Code Online (Sandbox Code Playgroud)

openssl windows-7-x64

6
推荐指数
1
解决办法
3万
查看次数

标签 统计

openssl ×1

windows-7-x64 ×1