gpt4 book ai didi

openssl - 将中间证书添加到 pkcs12 文件

转载 作者:行者123 更新时间:2023-12-02 09:50:36 27 4
gpt4 key购买 nike

我的证书具有以下认证链:Entrust->我的 CA->我的颁发 CA->我的 JBoss 证书。现在,如果我在 JBoss 实例上安装证书,则我访问的在此实例上运行的任何页面都将显示为不受信任,因为我的浏览器无法识别我的颁发 CA。我知道我的计算机拥有 Entrust 签名机构的公钥。如何安装我的证书以便任何浏览器都可以看到整个证书链?

我制作了一个包含所有证书的 .pem 文件,认为可以工作。它没。谁能解释我做错了什么,或者即使这是可能的?

最佳答案

Adding an intermediate certificates to a pkcs12 file ...

以下是我在网络和邮件服务器上执行此操作的方法。

首先,www-example-com.crt 是 Startcom 签署的 Web 服务器证书。 Startcom 提供免费的 1 类证书,我最信任的浏览器和移动设备,因此我使用它们。证书采用 PEM 格式(----- BEGIN CERT ---------- END CERT -----)。

其次,我打开 www-example-com.crt 并附加 Startcom 的 Class 1 Intermediate。我从 Startcom 的 Index of /certs 获得中间体。现在我的 www-example-com.crt 中有两个 PEM 编码的编码证书。

第三,我执行以下操作来创建一个 PKCS12/PFX 文件以在 IIS 中使用。

openssl pkcs12 -export -in www-example-com.crt -inkey www.example.key -out www-example-com.p12
<小时/>

就您而言,您的 www-example-com.crt 将至少包含三个 PEM 编码证书:

----- BEGIN CERT -----
< My JBoss Certificate >
----- END CERT -----

----- BEGIN CERT -----
< My Issuing CA >
----- END CERT -----

----- BEGIN CERT -----
< My CA >
----- END CERT -----

链中的第三个证书 - 我的 CA - 是可选的。如果您的客户使用My CA 作为信任 anchor ,则不需要它。如果您的客户使用 Entrust 作为信任 anchor ,那么您需要将其包含在内。

如果您 cat 您的 www-example-com.crt 并且它有多个证书,则不要继续。在您的服务器证书具有验证链所需的所有中间证书之前,请勿执行 openssl pkcs12

不要包含 Entrust CA 证书。

<小时/>

我怀疑 Entrust 直接与他们的 CA 签署。他们可能也使用中间体。所以你的证书链可能应该是这样的:

----- BEGIN CERT -----
< My JBoss Certificate >
----- END CERT -----

----- BEGIN CERT -----
< My Issuing CA >
----- END CERT -----

----- BEGIN CERT -----
< My CA >
----- END CERT -----

----- BEGIN CERT -----
< Entrust Intermediate >
----- END CERT -----

Entrusts 在 Entrust Root Certificates 提供其 CA 和中间证书。我无法告诉您您需要哪一个,因为您不会提供 URL 或向我们展示您拥有的链条。但我猜它会是以下一项或多项:

  • 委托(delegate)L1E链证书
  • 委托(delegate)L1C链证书
  • Entrust L1E 链证书 (SHA2)
  • Entrust L1C 链证书 (SHA2)

您可以使用 OpenSSL 的 `s_client 测试您的链。这次,您将使用 Entrust 的证书:

echo -e "GET / HTTP/1.0\r\n" | openssl s_client -connect myserver:8443 \
-CAfile entrust-ca.pem

您可以从Entrust Root Certificates获取entrust-ca.pem 。运行它并告诉我们您遇到了什么错误。或者更好的是,将 URL 发布到您的服务器,以便我们可以看到发生了什么。

关于openssl - 将中间证书添加到 pkcs12 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22618108/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com