我最近不得不经历这个过程,但没有一个答案对我有用。以下是允许我将新 SSL 证书上传到 AWS 的步骤(以供后续在 ElasticBeanstalk 中使用)。
获取私钥
我必须为此过程使用两个命令:
openssl genrsa -des3 -out server.pass.key 2048
openssl rsa -in server.pass.key -out server.key
server.key 文件是您的私钥。
此外,您可以通过执行以下操作生成 CSR(证书签名请求):
openssl req -nodes -new -key server.key -out server.csr
这是我们将用来请求 GoDaddy 颁发我们的新证书的文件。
获取公钥
在 GoDaddy 中颁发证书后,下载它。这将为您提供两个必须通过以下方式捆绑为一个的文件:
cat yourdomain.crt gd_bundle-g2-g1.crt > combined.crt
combined.crt 将是您的公钥。
将服务器证书上传到 AWS
有了server.key 和combined.crt 文件,您现在可以使用AWS CLI 将证书上传到AWS。您只需要使用以下命令:
aws iam upload-server-certificate --server-certificate-name your_certificate_name --certificate-body file://combined.crt --private-key file://server.key
如果一切顺利,你会收到来自服务器的响应:
{
"ServerCertificateMetadata": {
"ServerCertificateId": "ABCDEFG12345678",
"ServerCertificateName": "certificate-name",
"Expiration": "2018-08-26T11:59:38Z",
"Path": "/",
"Arn": "arn:aws:iam::1234123412:server-certificate/certificate-name",
"UploadDate": "2017-08-26T19:53:46.989Z"
}
}
就是这样,您应该可以在 AWS 中使用新的 SSL 证书。