将 GoDaddy 证书添加到 EC2 ELB

将 GoDaddy 证书添加到 EC2 ELB

我在 AWS Elastic Load Balancer 上安装 SSL 证书时遇到了点麻烦。我有一个来自 GoDaddy 的通配符证书,需要将其指向 ELB。

我已经运行了该命令(我在负载均衡器后面的一台服务器上运行了它):

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

然后我将 .csr 文件发送给 GoDaddy。此时他们返回了一个 zip 文件夹,其中包含两个文件:gd_bundle.crtmydomain.com.crt。查看 gd_bundle.crt 时发现它里面有两个唯一密钥(两个 base 64 编码字符串)。

Amazon ELB 要求提供公钥和私钥,根据我所做的操作,我不确定哪个是公钥。从这一点来看,我不确定要做什么才能加载所有这些。

任何帮助将不胜感激。

答案1

私钥是您与 CSR 一起生成的 mydomain.key。

GoDaddy 向您发送的是公钥(由 GoDaddy 签名的证书文件 mydomain.com.crt),以及 GoDaddy 的中间证书链,以完成您的证书与最终用户浏览器所知的证书(gd_bundle.crt 文件)之间的信任链。

我对 ELB 不是特别熟悉,但是查看这个文档页面:

http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/US_UpdatingLoadBalancerSSL.html

您将提供 mydomain.key 文件作为私钥、mydomain.com.crt 文件作为公钥,并提供 gd_bundle.crt 文件作为证书链。

答案2

将 GoDaddy 证书添加到 EC2 ELB

设置 AWS 命令​​行界面

安装说明位于此处:http://aws.amazon.com/cli/

定义您的文件并运行以下命令:

# define these
crtdomain="example.com"
crtchain="gd_bundle.crt"

echo "converting to pem format"
openssl rsa -in ${crtdomain}.key -out aws-${crtdomain}.key
openssl x509 -in ${crtdomain}.crt -out aws-${crtdomain}.crt -outform PEM

echo "uploading certificate ${crtdomain} to Amazon"
aws iam upload-server-certificate \
--certificate-body file://aws-${crtdomain}.crt \
--private-key file://aws-${crtdomain}.key \
--certificate-chain file://${crtchain} \
--server-certificate-name ${crtdomain}

来源:http://brakertech.com/ec2-elb-godaddy-cert/

答案3

如果你打开你的文件,text editor你会看到

-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----


-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----

链条可能是gd_bundle.crt

在此处输入图片描述
我给了我certificate name与公钥相同的名称,mydomain.com.crt

该名称Private Key来自制作密钥的文本版本:
sudo openssl rsa -in /etc/ssl/certs/mydomain.key -text
(这将是服务器上文件的路径) /etc/ssl/certs/

Public Key有可能的是mydomain.com.crt

并且Certificate Chain可能会gd_bundle.crt

相关内容