当我使用https://www.ssllabs.com/ssltest/测试网站时,我得到了这个:

你能解释一下:
- 为什么有两条路?它们来自哪里,它们在哪里配置?
- 这个“信任商店”提到了什么?它在我的浏览器中吗?在我正在测试的服务器上?在 SSLLabs.com 服务器上?
最后我得到一个“A”:

但是 Chrome 仍然抱怨:

我怀疑这是因为第一张图片上的信任链,但我不确定如何“修复”它。我阅读了这个问题中的所有链接,所以我了解了基础知识,但没有涵盖我的特殊情况(或者我无法连接这些点)。
当我使用https://www.ssllabs.com/ssltest/测试网站时,我得到了这个:

你能解释一下:
最后我得到一个“A”:

但是 Chrome 仍然抱怨:

我怀疑这是因为第一张图片上的信任链,但我不确定如何“修复”它。我阅读了这个问题中的所有链接,所以我了解了基础知识,但没有涵盖我的特殊情况(或者我无法连接这些点)。
为什么有两条路?它们来自哪里,在哪里配置?
使用颁发者证书的公钥创建签名。两个证书可以包含相同的公钥(通常在重新颁发证书后),如果这两个 CA 证书都包含在信任库中,这会导致替代信任路径。
这个“信任商店”提到了什么?它在我的浏览器中吗?在我正在测试的服务器上?在 ssllabs 服务器上?
这是在 SSLLabs 服务器上,他们尝试使用类似于浏览器的信任库。当然,浏览器使用的真实信任库取决于浏览器和/或操作系统,因此它并不能完全反映浏览器中发生的情况。
但是chrome仍然抱怨:
很难说到底发生了什么,但信任库中证书的签名无关紧要,只有叶证书和中间证书的签名。这可能是误报。
1 - “信任库”取决于您的浏览器/操作系统。对于 Firefox,它位于 Firefox 中,对于 Windows 上的 Chrome,它是您 Windows 的信任库
有两条路径,因为 ssllabs 知道两个可以是 root 的证书。如果您的访问者在他们的信任库中有这两者中的任何一个,那么您的证书将是有效的。
2 - Chrome 可能会抱怨,因为如果一个 debian 错误:
https://sslmate.com/blog/post/chrome_cached_sha1_chains
这不是因为这两条路径和根证书上的 SHA-1 不会产生该错误:
注意:受信任根证书的基于 SHA-1 的签名不是问题,因为 TLS 客户端通过其身份信任它们,而不是通过其散列的签名。
https://blog.chromium.org/2014/09/gradually-sunsetting-sha-1.html
- 这个“信任商店”提到了什么?它在我的浏览器中吗?在我正在测试的服务器上?在 ssllabs 服务器上?
信任库位于 SSL Labs 服务器上。他们使用 Mozilla 信任库。详情如下。
- 为什么有两条路?它们来自哪里,它们在哪里配置?
因为两个 StartCom 证书都在 Mozilla 的信任库中。SHA-1 签署了一份,SHA -256 签署了一份。
SSL Labs 在存在信任问题的扫描结果底部这样说:
未知的证书颁发机构
为了建立信任,我们必须在我们的信任存储中拥有签名证书颁发机构的根证书。SSL Labs 不维护自己的信任库;相反,我们使用 Mozilla 维护的商店。[...]
因此:不考虑 Microsoft、Apple 或 Java 信任库。
但它在路线图上说项目负责人Ivan Ristic 在 SSL Labs 论坛上说:
回复:ComSign CA 不在信任商店中,但受到 Internet Explorer 和 Chrome 的信任 Ivan Ristic 于 2014 年 11 月 14 日凌晨 1:22 发布(回复 Zeev Tarantov)
目前没有。SSL Labs 使用 Mozilla 根存储,因此如果根不存在,我们会将其报告为不受信任。我预计在下一个主要版本中,我们将分别报告每个主要根存储的信任度。
但 Chrome 仍然抱怨
Chrome 使用操作系统的信任库。它不维护自己的信任库。所以这就是它可以修复的地方。
看来它应该起作用了。正如 Steffen Ullrich 所指出的,因为信任锚的签名并不重要。只在中间件上。并且中间体被标记为“由服务器发送”。所以它应该有效。
也许您的 Windows 已经缓存了中间证书并且实际上并没有使用服务器发送的内容。
而且实际上至少有两个单独的“StartCom Class 2 Primary Intermediate Server CA”证书。同样,一个使用 SHA1,另一个使用 SHA256。
StartCom 在其论坛上列出了一种修复此问题的方法:
这个问题(使用 StartCom CA 的现有基础架构)可以由客户(您网站的访问者)和软件供应商(谷歌和微软)解决。- 客户需要手动删除我们的 SHA1 签名的中间 CA。
在 Chrome 中,在 URL 栏中写入“Chrome://settings”,向下滚动并单击“显示高级设置...”,继续向下滚动,到达 HTTPS/SSL 并单击“管理证书...”。Windows 的证书管理器将出现,转到“中级证书颁发机构”,找到“StartCom 类...”。您只需将其删除,Windows 将在您下次访问没有完整证书链的站点时重新导入 SHA2 签名的中间 CA。
他们的网站上有一个额外的屏幕截图。