中间/链证书的 SSL 证书错误

标签 ssl certificate chain

发现一个使用合法证书(由thawte 签名)的网站,但所有浏览器都会拒绝它。我不明白为什么。 thawte 的支持告诉我一个域有两个证书,然后将这个 https://www.sslshopper[dot]com/ssl-checker.html?hostname=donaubuero.de 发给我. 谁能解释一下为什么 thawte 上面的证书链坏了?为什么donaubuero[dot]de的证书无效?

谢谢

最佳答案

在您的网络服务器上,您需要安装站点证书和证书链,它将您的证书链接到浏览器中的根证书。

链证书应由您的 SSL 提供商提供。

具体怎么做,你需要查看你的网络服务器文档。有时您只需要添加 SSL 配置,有时您需要将它与您的站点证书链接起来。

附录:

您有一个证书,可能是由 3 级证书签署的。但是有很多 3 级证书(良好的安全实践“要求”经常更新此类证书 [3 级 CA 自动签署证书,根 CA 离线存储,很少,并且以更受控的方式,他们签署2 级证书]。所以浏览器不能存储所有 3 级证书。

因此,协议(protocol)要求您还提供从根目录到您的证书的链。因此,浏览器检查 root 是否受信任(通过浏览器),并检查各个级别是否被上一级证书信任。这样他就知道你的证书是可信的。

链中的顺序很重要,一些 SSL 实现需要链加上站点证书(作为两个文件,例如 Apache),但其他实现需要完整的链(链附加到站点证书,所以一个文件,许多电子邮件服务器)。在某些浏览器上,链中证书的顺序很重要(移动浏览器更加挑剔)。

这个网站可能比我的帖子有更好的解释:https://support.dnsimple.com/articles/what-is-ssl-certificate-chain/

关于中间/链证书的 SSL 证书错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49112490/

相关文章:

java - 如何通过 LDAP SSL 启用连接池?

pdf - 在哪里可以获得文档签名证书

javascript - 如何在没有链接的情况下调用函数链中的任何函数?

ssl - Azure API 管理 - Validate-JWT - 禁用证书验证

Javascript - 无法理解闭包

android - 在 RxJava 中将 Singles 链接在一起

java - CHECK_NRPE : Error - Could not complete SSL handshake (web)

java - 使用启用了 TLS 的 kafka-topics cli 命令时出现问题

java - SSL 和套接字 channel

c# - 比较 bouncycaSTLe x509 与 x509certificate2