将中间证书添加到 pkcs12 文件

2024-01-10

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

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


将中间证书添加到 pkcs12 文件...

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

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

二、我打开www-example-com.crt并附加 Startcom 的 1 级中级。我从 Startcom 获得中间体索引/证书 https://www.startssl.com/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 -----

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

If you cat your www-example-com.crt确实如此NOT有多个证书,则不要继续。不执行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 提供其 CA 和中间证书:委托根证书 https://www.entrust.net/downloads/root_request.cfm。我无法告诉您您需要哪一个,因为您不会提供 URL 或向我们展示您拥有的链条。但我猜它会是以下一项或多项:

  • Entrust L1E链证书
  • 委托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-ca.pem from 委托根证书 https://www.entrust.net/downloads/root_request.cfm。运行它并告诉我们您遇到了什么错误。或者更好的是,将 URL 发布到您的服务器,以便我们可以看到发生了什么。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将中间证书添加到 pkcs12 文件 的相关文章

随机推荐

  • 哪些 std::async 实现使用线程池?

    使用的优点之一std async而不是手动创建std thread对象应该是std async可以在幕后使用线程池来避免超额订阅问题 但是哪些实现可以做到这一点呢 我的理解是微软的实现确实如此 但是其他的呢 async实施 Gnu 的 li
  • 使用 MapReduce 实施 PageRank

    我正在尝试解决使用 MapReduce 实现 PageRank 的理论问题 我有以下具有三个节点的简单场景 A B C 邻接矩阵在这里 A B C B A 例如 B 的 PageRank 等于 1 d N d PR A C A N numb
  • Matlab 中打印函数的 Ghostscript 错误

    我正在尝试使用 Matlab 保存图像print功能 myImage magic 500 myFigure figure visible off r 1 set myFigure PaperUnits inches PaperPositio
  • 业务对象、验证和异常

    我一直在阅读一些有关异常及其使用的问题和答案 似乎有一种强烈的观点认为 仅应针对异常 未处理的情况提出异常 因此 这让我想知道验证如何与业务对象一起工作 假设我有一个业务对象 其中包含对象属性的 getter setter 假设我需要验证该
  • 我正在尝试创建一个情节性的旭日图,但收到错误消息:“dtype:对象,”不是叶子。

    我正在尝试创建一个旭日图 其中不同的行具有不同的长度 并收到错误消息 dtype 对象 不是叶子 我读过这篇文章 请注意 None 条目的父项必须是叶子 即它不能有除 None 之外的其他子项 否则会引发 ValueError 在情节页面上
  • gulp-filter 过滤掉所有文件

    我正在努力将我的工作流程转移到 Gulp 到目前为止我很喜欢它 然而 我似乎误解了 gulp filter 插件的工作原理 我有以下任务 gulp task assets function var stylesFilter gulpFilt
  • YAML 中的管道符号有什么用?

    我是 yaml 新手 我对用于多行的管道符号 有疑问 YAML 是否有类似于下面的语法 test 6 在下面的两个 YAML 文件中 第一个有效 第二个无效 我不知道是什么原因造成的 第一个文件 Name testing val1 seco
  • 将一个 TForm 嵌入另一个 TForm 时如何避免出现问题?

    我经常嵌入一个TForm后代成为另一个TForm后代是这样的 var Form1 TForm1 Form2 TForm2 begin Form2 Parent Form1 Form2 BorderStyle bsNone Form2 Ali
  • AS400 角色扮演模拟器

    我有一个迫切的需求 从java调用一个RPG程序 正如本文中所建议的从 Java 访问 iSeries 上的 RPG https stackoverflow com questions 184864 accessing rpg on ise
  • 为自定义设计器编写 Visual Studio 扩展

    所以 我有一些我想尝试的东西 我的想法是拥有一个作为 Visual Studio 扩展的视觉设计器 我希望能够拖出事件处理程序并连接行为 任何曾经玩过 魔兽争霸 III 脚本编辑器的人都会很清楚我的意思 我想做 这种事情可以在 Visual
  • 如何连接浮点数和字符串?

    我试过这个 ostringstream myString float x string s if x myString lt
  • 包含列表的 Angular2 反应形式

    我正在尝试为用户创建一个表单 该表单允许将多个电话号码与该用户关联 这对于当前反应式表单的实现来说是可能的吗 例如 我希望下面的表格接受可能的许多电话号码 我的前端实现将显示电话号码字段 并且有一个按钮允许添加额外的电话号码字段 userF
  • 从 OpenCart 中删除 index.php?route=common/home

    我目前有User SEO URL s在 OpenCart 管理中设置为是 System gt Settings gt Store gt Server gt User SEO URL s 到目前为止 所有标签和 SEO 链接都正常工作 该命令
  • 如何在android中添加填充矢量文件

    如何在矢量文件中添加填充左 右 上和下变量 我变了 android 视口宽度 and android 视口高度 但一切都没有改变 我的矢量
  • 以编程方式将自定义 WCF 标头添加到端点以实现可靠会话

    我正在构建一个 WCF 路由器 我的客户端使用可靠会话 在这种情况下 当客户端打开通道时 会发送一条消息 建立可靠会话 其内容如下
  • 如何创建一个根据参数使用 $resource 返回数据的服务

    我想创建一个根据参数调用后端的服务 这段代码不起作用 但我希望它能显示我想要实现的目标 myproject factory Item function resource if id undefined return resource res
  • 如何强制 GPG 接受来自 STDIN 的输入而不是尝试打开文件?

    我正在尝试将 GPG 的文本清晰签名合并到 PHP 脚本的字符串中 我可以让 GPG 加密字符串中的文本 如下所示 encrypted shell exec echo text gpg e a r email protected cdn c
  • 如何解决 DataSet.toJSON 与结构化流不兼容的问题

    我想将 Twitter 中的数据写入 Kafka 出于教育目的 我尝试使用结构化流来做到这一点 我创建了一个基于套接字源的 Twitter 源 它运行良好 我按如下方式设置来源 val tweets spark readStream for
  • Django Angular cors错误:不允许access-control-allow-origin

    我已经使用 django rest auth 在我的 django 应用程序中实现了身份验证 我在settings py中的设置 ALLOWED HOSTS Application definition INSTALLED APPS dja
  • 将中间证书添加到 pkcs12 文件

    我有一个具有以下认证链的证书 Entrust gt 我的 CA gt 我的颁发 CA gt 我的 JBoss 证书 现在 如果我在 JBoss 实例上安装证书 则我访问的在此实例上运行的任何页面都将显示为不受信任 因为我的浏览器无法识别我的