【发布时间】:2011-10-08 21:04:25
【问题描述】:
我正在尝试在我在 Amazon AWS 上设置的新负载均衡器上安装 GoDaddy SSL 证书。我最初在 Godaddy 使用 keytool 程序创建了证书,用于直接安装在 Glassfish 3.1 服务器(Amazon linux ami)上。我直接在服务器上进行设置没有问题。我现在需要将证书从 Web 服务器移动到新的负载均衡器。 Amazon 要求私钥和证书必须是 PEM 格式,所以我使用 GoDaddy 的“rekey”工具来创建新证书。当我在 AWS Mgmt 控制台的负载均衡器设置屏幕中加载它们时,我收到错误消息:“公钥证书和私钥不匹配。”
这是我创建密钥的方式:
$ openssl genrsa -des3 -out private.key 2048
$ openssl req -new -key private.key -out apps.mydomain.com.csr
然后我在“重新生成密钥”过程中将 .csr 文件提交给 GoDaddy。更新密钥完成后,我下载了 2 个新创建的证书(apps.mydomain.com.crt 和 gd_bundle.crt)。我下载它们时选择(Apache)作为服务器类型(我也尝试过“其他”和“Cpanel”,但看起来都一样)。
此时,我使用以下命令从 private.key 文件中删除加密:
$ openssl rsa -in private.key -out private.pem
此时,我返回 AWS Mgmt 控制台,创建负载均衡器,添加安全服务器重定向并将以下文件的内容放在屏幕上要求设置 ssl 证书的相应字段中:
private.pem --> Private Key
apps.mydomain.com.crt --> Public Key Certificate
gd_bundle.crt --> Certificate Chain
当我单击“继续按钮”时,我收到错误消息“错误:公钥证书和私钥不匹配。”
-有没有一种方法可以测试我是否从亚马逊收到了有效的错误消息?当我非常严格地遵循 GoDaddy 的说明时,密钥不匹配,这对我来说似乎很奇怪。
在创建 .csr 之前,我尝试创建没有 RSA 加密的 private.key 文件,但这似乎没有任何区别。
我还假设我从 GoDaddy 下载的 .crt 文件是 .PEM 格式,但我不确定如何验证这一点。
有什么想法吗?
【问题讨论】:
-
Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super User 会是一个更好的提问地方。另见Where do I post questions about Dev Ops?。
-
这个帖子已经有3年多了,为什么还要现在搬呢?
-
Felby - 人们经常说,“...但是看到这个帖子和那个帖子”。因此,仅仅保持新帖子的整洁是不够的——我们至少也必须在旧帖子上获得消息。至于它的价值,我不认为这是一个坏问题。对于 Stack Overflow 来说,这有点离题。
-
@Felby 你应该考虑this answer 接受。当 AWS 出现这个问题时,它是大多数开发人员正在寻找的。span>
标签: ssl amazon-ec2 openssl ssl-certificate