如何从 openssl 生成的密钥生成 X.509 证书

2024-04-16

我有一个在 ec2 实例上运行的 Web 服务器,该实例在内部调用使用 Spring Boot 构建的 REST 服务器。现在,我正在尝试让此 REST 服务器在 SSL 下运行。这是我到目前为止所做的:

1)使用此命令创建 CSR 和密钥文件

openssl req -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr

2) Copied 'csr' to get SSL certificate from GoDaddy.

3)在我的ec2实例上的Nginx下成功安装了证书。

4)当我点击 https 下的主页时,它就可以工作了。我不再从浏览器收到“不安全”消息。

5) 登录失败,因为它进行了 REST 调用,但 REST 服务器未在 SSL 下运行,因此我尝试让它在 SSL 下运行。

6)运行以下命令:

keytool -import -alias mydomain -keystore tomcat.keystore -trustcacerts -file mydomain.com.chained.crt
keytool -import -alias mydomain-key -keystore tomcat.keystore -trustcacerts -file mydomain.key

上一个命令给我一条错误消息: “keytool 错误:java.lang.Exception:输入不是 X.509 证书”

但这是在上面的步骤 1 中创建的文件,并且同一文件在 Nginx 下工作。我错过了什么(除了我对设置 SSL 知之甚少!)?我相信,我需要第二个命令来指定 application.properties 中“server.ssl.keyAlias”的值。


不是真正的答案,而是溢出的评论。

您不需要“生成”X.509 证书;您已经从 GoDaddy 获得了该信息。如果(且仅当)SpringBoot 服务器通过与(外部)nginx 相同的名称访问——我不清楚——你需要将一对私钥和证书链从 PEM 格式转换为 Java 使用的格式。看:
如何导入 Java 密钥库中现有的 x509 证书和私钥以在 SSL 中使用? https://stackoverflow.com/questions/906402/how-to-import-an-existing-x509-certificate-and-private-key-in-java-keystore-to-u/
如何设置 LetsEncrypt SSL 证书并在 Spring Boot 应用程序中使用它? https://stackoverflow.com/questions/36991562/how-can-i-set-up-a-letsencrypt-ssl-certificate-and-use-it-in-a-spring-boot-appli
如何在java中使用openssl生成的.key和.crt文件? https://stackoverflow.com/questions/6482484/how-to-use-key-and-crt-file-in-java-that-generated-by-openssl
导入 Java KeyStore 中的私钥/公钥证书对 https://stackoverflow.com/questions/17695297/importing-the-private-key-public-certificate-pair-in-the-java-keystore
maybe 将密钥和 SSL 证书导入 java 密钥库 https://stackoverflow.com/questions/14398423/import-key-and-ssl-certificate-into-java-keystore

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

如何从 openssl 生成的密钥生成 X.509 证书 的相关文章

随机推荐

  • VSCode 终端进程命令启动失败

    我正在尝试你好世界样本 https github com Microsoft vscode extension samples tree master helloworld sample扩大 但是当我从 运行扩展 任务运行扩展时 它给出以下
  • UIActivityViewController 或 UIDocumentInteractionController 与 WhatsApp 和 FB

    我需要使用 Facebook 和 WhatsApp 作为我的图像的共享选项 我已经实现了 UIActivityViewController 我可以通过 Facebook 分享和UIDocumentInteractionController我
  • 使用 MSBuild 压缩多个项目目录

    作为 MSBuild 4 0 中构建过程的一部分 我最终得到以下目录结构 OutDir ProjectA File1 dll File2 dll File3 exe ProjectB Subfolder1 File4 html File5
  • JSP中如何求整数的长度?

    我可以用fn length mystring 查找字符串的长度 字符数 如何找到整数的长度 位数 例如如果我的int是3000 我想返回4 将其转换为String首先将其评估为
  • Cherrypy 3.2.0:启动引擎在同一实例中运行 HTTP 和 HTTPS

    早上好 我在 HTTP 或 HTTPS 中成功启动了cherrypy 3 2 0引擎 ssl variable commes input parameters Bellow cherrypy configuration is fully c
  • 正则表达式 + Python - 删除所有以 * 开头的行

    我想从给定文件中删除所有以 开头的行 例如 以下内容 This needs to be gone But this line should stay remove this too End 应该生成这个 But this line shou
  • android 中动态创建的自定义进度对话框

    我已经在 asynctask 中动态创建了progressdialog 我为我的应用程序使用自定义样式 当我这样做时 我的进度对话框样式更改为白色 我需要我的默认样式为黑色和白色文本 我的java文件 class LoginTask ext
  • 具有相同空间比例的 geom_sf 的小型多个地图

    我想使用多个小地图绘制一个图形ggplot2 geom sf 这里的挑战是如何保持所有地图在图像中居中并处于相同的空间比例 这是问题 下面是可重现示例的数据 一个简单的地图使用facet wrap将所有多边形置于相同的空间尺度 但它们不居中
  • flutter ios 应用程序在 xcode 上运行,但无法在 vscode 和 android studio 上运行

    我的应用程序在 android 和 ios 上完美运行 仅使用 xcode 由于某种原因 当我使用 vsCode 或 Android studio 运行它时 它返回一个错误 Launching lib main dart on iPhone
  • 动态透视查询,无需将查询存储为字符串

    我完全熟悉链接中用于执行动态数据透视查询的以下方法 是否有另一种方法可以执行动态透视 而无需将查询存储为字符串并在其中插入列字符串 http www simple talk com community blogs andras archiv
  • 无法运行 Hyperloop 项目

    我已经从 master 下载了最新的 SDK 如下所述 http builds appcelerator com master http builds appcelerator com master 我还从这里下载了最新的 Hyperloo
  • 忽略 shell 脚本中的特定错误

    我有一小段 shell 脚本 它可能会引发许多错误 我当前将脚本设置为在出现所有错误时全局停止 不过我希望这个小部分略有不同 这是片段 recover database using backup controlfile until canc
  • C# 中的辅助方法:静态还是非静态?

    我有一个包含一些函数的类 这些函数实际上只是客户端代码可以使用其他公共访问器属性 方法自行完成的 帮助器 方法 并且我尚未决定是否应该使用 getter 实例将它们定义为属性方法 或将实例作为参数的静态方法 此外 我还从类中提取了一个接口
  • 如何使用 selenium webdriver 检查弹出窗口是否存在?

    我正在一个应用程序上运行链接测试 其中一个链接会弹出一个登录弹出窗口 有办法检查吗 我尝试将其视为警报 但没有成功 try WebDriverWait wait new WebDriverWait driver 2 wait until E
  • 图表轴标签格式VBA设置

    我正在编写 vb 脚本来生成图表 在 X 轴上有日期 在 Y 轴上有温度 在 X 轴上 我想以 dd mm 格式显示时间 我的数据如下所示 2014 06 17 01 00 2014 06 17 02 00 2014 06 17 03 00
  • MainWindow 对象没有属性“connect”

    我想知道是否有人可以帮助我解决有关 PyQt5 中插槽连接的问题 下面的代码片段将告诉你我的问题是什么 class MainWindow QMainWindow def init self super MainWindow self ini
  • 从 DialogFragment 设置状态栏颜色

    我正在创建一个动态更改状态栏颜色的应用程序 当从任何片段调用时 我在主 Activity 类中的方法都可以正常工作 片段放置在 Activity pager 中 public void setStatusBarColorIfPossible
  • 正在发生 mongoDB 写入,然后读取必须等待或不等待

    当 mongoDB 写入发生时 读取必须等待或不等待 当 mongoDB 要在 mongodb 中写入一些文档时 会发生写锁并且 其他线程尝试读取其他文档 那么它应该等待直到写锁释放或不释放 所有读锁和写锁之间是否存在依赖关系 来自docs
  • boost::Optional 到 bool 的转换

    如何防止该代码的最后一行编译 include
  • 如何从 openssl 生成的密钥生成 X.509 证书

    我有一个在 ec2 实例上运行的 Web 服务器 该实例在内部调用使用 Spring Boot 构建的 REST 服务器 现在 我正在尝试让此 REST 服务器在 SSL 下运行 这是我到目前为止所做的 1 使用此命令创建 CSR 和密钥文