【问题标题】:Openssl Certificate ChainOpenssl 证书链
【发布时间】:2021-05-12 22:17:54
【问题描述】:

执行命令:

openssl s_client  -connect (redacted):443

我得到了输出

depth=1 C = US, O = Let's Encrypt, CN = R3
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 CN = *.(redacted)
verify return:1
---
Certificate chain
 0 s:CN = *.(redacted)
   i:C = US, O = Let's Encrypt, CN = R3
 1 s:C = US, O = Let's Encrypt, CN = R3
   i:O = Digital Signature Trust Co., CN = DST Root CA X3
---

“无法获取本地颁发者证书”错误是什么意思?从上面我可以看到完整的链在那里,并且根 CA“DST Root CA X3”签署了“R3”证书。那么肯定不需要明确信任 R3 证书吗?这够好吗? 这值得关注吗?

【问题讨论】:

    标签: ssl https openssl x509 pki


    【解决方案1】:

    验证错误:num=20:unable to get local issuer certificate

    从叶(服务器证书)到中间链证书 (R3) 的信任链必须以 本地信任 根 CA (DST Root CA X3) 结束。显然,这个根 CA 在您的 openssl 设置使用的 CA 存储中不受本地信任(或者您可能已明确使用 -CApath-CAfile)。

    【讨论】:

    • 谢谢。这对我来说是非常出乎意料的,因为它是一个非常常见的根 CA,几乎受到普遍信任。我最初对这里看似矛盾的信息与“验证返回:1”和“验证错误”感到困惑
    • @user98651:我猜问题出在你的系统设置或你的openssl。对我来说,这个 CA 位于 Ubuntu 20.04 中 OpenSSL 使用的默认信任库中,它可以毫无问题地进行验证。请注意,例如在 Windows 上,OpenSSL 不会使用系统信任存储,但需要它自己的 - 如果设置不正确,它将像您的问题一样失败
    猜你喜欢
    • 2018-02-27
    • 2023-03-30
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 2011-10-16
    • 2014-06-11
    • 2012-12-24
    • 2020-06-26
    相关资源
    最近更新 更多