Fel*_*lby 85 ssl openssl amazon-ec2 ssl-certificate
我正在尝试在我在Amazon AWS上设置的新负载均衡器上安装GoDaddy SSL证书.我最初在Godaddy使用keytool程序在Glassfish 3.1服务器(Amazon linux ami)上直接安装创建了证书.我没有问题直接在服务器上进行设置.我现在需要将证书从Web服务器移动到新的负载均衡器.亚马逊要求私钥和证书采用PEM格式,因此我使用GoDaddy的"重定密钥"工具来创建新的证书.当我在AWS Mgmt Console的负载均衡器设置屏幕中加载它们时,我收到错误消息:"公钥证书和私钥不匹配."
以下是我创建密钥的方法:
$ openssl genrsa -des3 -out private.key 2048
$ openssl req -new -key private.key -out apps.mydomain.com.csr
Run Code Online (Sandbox Code Playgroud)
然后我在"重定密钥"过程中将.csr文件提交给GoDaddy.重新生成密钥后,我下载了2个新创建的证书(apps.mydomain.com.crt和gd_bundle.crt).我下载它们选择(Apache)作为服务器的类型(我也试过"其他"和"Cpanel",但所有看起来都是一样的).
此时,我使用以下命令从private.key文件中删除加密:
$ openssl rsa -in private.key -out private.pem
Run Code Online (Sandbox Code Playgroud)
此时,我将返回AWS Mgmt控制台,创建负载均衡器,添加安全服务器重定向,并将以下文件的内容放在屏幕上的相应字段中,并要求设置ssl证书:
private.pem --> Private Key
apps.mydomain.com.crt --> Public Key Certificate
gd_bundle.crt --> Certificate Chain
Run Code Online (Sandbox Code Playgroud)
当我单击"继续按钮"时,出现错误"错误:公钥证书和私钥不匹配".
- 有没有办法我可以测试我从亚马逊收到有效的错误消息?当我非常密切地关注GoDaddy的指令时,我觉得钥匙不匹配似乎很奇怪.
我在创建.csr之前尝试创建没有RSA加密的private.key文件,这似乎没有任何区别.
我也假设我从GoDaddy下载的.crt文件是.PEM格式,但我不知道如何验证这一点.
有任何想法吗?
Jon*_*ill 61
对我来说,这是一个简单的两步:
将私钥转换为PEM:
openssl rsa -in yourdomain.key -outform PEM
openssl x509 -inform PEM -in yourdomain.crt
openssl x509 -inform PEM -in bundle.crt
Chr*_*s J 39
只是为了记录和其他任何想要弄明白的人:
yourdomain.key - >终端命令:sudo openssl rsa -in yourdomain.key -outform PEM -out yourdomain.pem
- >私钥
yourdomain.crt - >公钥
gd_bundle.crt - >证书链
你很高兴去:)
Fel*_*lby 23
看起来问题是我将密钥和证书的内容复制到AWS管理控制台的方式.我在Windows 7桌面上使用在Virtual Box中运行的Ubuntu桌面; 将值从gedit屏幕复制并粘贴到Windows框中运行的浏览器中.一旦我在与Web浏览器相同的盒子上打开密钥和证书文件(在本例中为Windows),证书就完成了.我猜测在Virtual Box客户端和主机之间使用共享剪辑板时,文件的某些部分没有正确完成.案件结案.
小智 7
我们找到了这个问题的替代解决方案.我们有相同的症状和相同的错误.
然后我们再次尝试重新输入pem代码,但这次我们确保输入一次并确保光标位于每个窗口末尾的空白行.然后我们保存了它.有效.
这解决了我们的问题,所以它可能会解决其他问题.
| 归档时间: |
|
| 查看次数: |
68714 次 |
| 最近记录: |