在AWS ELB实例处终止SSL
问题描述:
我需要在AWS ELB实例处终止SSL。 IT /业务为我提供了一个ZIP文件,其内容如下:在AWS ELB实例处终止SSL
DigiCertCA2.pem
TrustedRoot.pem
wildcard_example_com.crt
wildcard_example_com.csr
wildcard_example_com.key
wildcard_example_com.pem
(实际上该域名显然不是example.com
;但是这是我们自己的领域通配符证书)
按照ELB/SSL docs:
如果你有一个证书准备上传,选择上传一个新的SSL证书到AWS身份和访问管理(IAM )。输入证书的名称。在私钥中,复制并粘贴私钥文件(PEM编码)的内容。在公钥证书中,复制并粘贴公钥证书文件(PEM编码)的内容。在证书链中,复制并粘贴证书链文件(PEM编码)的内容,除非您使用的是自签名证书,并且浏览器隐式接受证书并不重要。
但是,我不确定哪个证书是“证书链文件”,或者甚至是必要的。我相信这些证书是由根/受信任的CA签署的(不是自签名的)。
我没有偏好我是否在Web控制台或AWS CLI工具中执行此操作,但为了使ELB正确配置SSL,需要采用哪些步骤/操作才能使用我的特定文件?
答
首先,不要通过旧的IAM服务方法来执行此操作,请使用新的AWS ACM服务来管理证书。 ACM服务还有一个很好的网页界面来完成这项工作。
您获得证书的公司应该能够告诉您哪个文件是链式文件,如果您希望浏览器正确地将您的SSL证书视为有效,则链式文件是必需的。我做了一些搜索,发现this blog post讨论了使用AWS的Digicert证书。它看起来像你的文件如下:
- wildcard_example_com.key =私钥文件
- wildcard_example_com.crt =公钥文件
- DigiCertCA2.pem和TrustedRoot.pem合并=证书链
感谢@Mark B(+1) - 以便博客文章倡导使用AWS CLI完成此操作,特别是'aws iam upload-server-certificate'命令。该命令需要一个'--certificate-chain file:// path/to/aws_chain.pem'参数。但是,听起来好像你在说我的连锁店中有两(2)个文件(DigiCertCA2 + TrustedRoot)。那么我需要以某种方式首先将这两个文件合并到一个PEM中?或者有没有办法在这个参数中指定它们?再次感谢! – smeeb
1。这是一篇旧的博客文章,甚至在顶部有一个警告,说它可能已经过时,所以不要通过AWS CLI使用IAM服务的建议。这只是在ACM服务可用之前必须使用的旧方法。 2.他告诉您将以下命令的输出粘贴到某些文件中,这也正是您需要粘贴到AWS ACM Web控制台的内容。 3.如果您查看证书链命令,他实际上将两个命令链接在一起以从这两个文件创建证书链。 –
这篇博客文章中唯一需要关注的部分是“私钥”,“公钥证书字段”和“证书链字段”三个部分作为标题。从中您将获得需要上传到AWS的三个PEM编码文件。 –