注意:本文描述了如何在Amazon Web Services的负载均衡器上安装SSL证书。如果您使用的是没有负载均衡器的EC2实例,请参考针对您的Web服务器类型和操作系统编写的官方文档。
由证书颁发机构签发的证书应与私钥和证书链(CA捆绑)一起上传到IAM。上传后,这些证书可供其他AWS服务使用。
上传证书的工具是AWS命令行界面(CLI)。
*注意:证书颁发机构可以以IAM不支持的格式发送给您证书。正确的格式是x.509 PEM。拥有.crt扩展名的文件是PEM格式,因此为了使用它们进行证书上传,您可以简单地将.crt文件重命名为.pem文件。否则,证书应使用OpenSSL转换为正确的格式。具体命令取决于您证书当前的格式。
-
您将需要三个文件来进行上传:
- 您的PEM格式证书
- PEM格式的私钥
- 证书链。如果您收到作为单独文件(例如COMODORSADomainValidationSecureServerCA.crt、COMODORSAAddTrustCA.crt和AddTrustExternalCARoot.crt),则可以使用OpenSSL命令将它们合并为一个文件,或从ZTABOX电子邮件中下载捆绑作为一个文件。
将单独的证书合并为一个完整的CA捆绑的OpenSSL命令是:
cat intermediate1.crt intermediate2.crt root.crt > ssl-bundle.crt
在我们的例子中,命令将如下所示:
cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > ssl-bundle.crt
您可以用一个命令从命令行上传所有三个文件:
aws iam upload-server-certificate --server-certificate-name certificate_object_name --certificate-body file://certificate --private-key file://privatekey.pem --certificate-chain file://certificate_chain_file
*注意:在指定文件作为参数(例如,对于certificate-body和private-key参数)时,应包含file://作为文件名的一部分。
certificate_object_name参数用于将您自己的名称分配给证书,以便日后识别。
-
上传证书时,IAM会根据以下标准进行验证:
- 证书应为X.509 PEM格式。
- 当前日期应在证书的签发和到期日期之间。
- 证书和私钥文件应仅包含一个项目,意味着一个证书和一个密钥相对应。
- 私钥应与证书匹配。
- 私钥应与证书一样是PEM格式。正确格式的密钥文本以 -----BEGIN RSA PRIVATE KEY----- 开始,以 -----END RSA PRIVATE KEY----- 结束。
- 私钥不得用密码加密。
一旦证书上传,您可以在IAM存储中验证信息。 使用以下命令来验证证书:
aws iam get-server-certificate --server-certificate-name certificate_object_name
输出将如下所示:
arn:aws:iam::Your_AWS_Account_ID:server-certificate/Your_Certificate_Object_Name Certificate_Object_GUID
Your_AWS_Account_ID是唯一的Amazon资源名称(ARN),而Certificate_Object_GUID是证书的ID。
响应将如下所示:
arn:aws:iam::123456789012:server-certificate/certificate_object_name ADGTHexampleLKBASAH
第一行的数字是ARN,而第二行是证书ID。
如果您需要更新HTTPS负载均衡器的证书,则需要使用证书的ARN。以下命令用于设置负载均衡器的证书:
aws elb set-load-balancer-listener-ssl-certificate --load-balancer-name my-loadbalancer --load-balancer-port 443 --ssl-certificate-id arn:aws:iam::123456789012:server-certificate/certificate_object_name
my-loadbalancer参数是您的负载均衡器的名称。
有关创建HTTPS负载均衡器和设置其名称的详细信息,请查看以下指南。