【问题标题】:Terminating SSL at an AWS ELB instance在 AWS ELB 实例上终止 SSL
【发布时间】:2017-03-24 15:01:13
【问题描述】:

我需要在 AWS ELB 实例上终止 SSL。 IT/Ops 为我提供了一个包含以下内容的 ZIP 文件:

  • 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 Identity and Access Management (IAM)。输入证书的名称。在 Private Key 中,复制并粘贴私钥文件(PEM 编码)的内容。在公钥证书中,复制并粘贴公钥证书文件(PEM 编码)的内容。在证书链中,复制并粘贴证书链文件(PEM 编码)的内容,除非您使用的是自签名证书并且浏览器隐式接受证书并不重要。

但是,我不确定哪个证书是“证书链文件”,或者是否有必要。我相信这些证书是由根/受信任的 CA 签名的(不是自签名的)。

无论是在 Web 控制台还是 AWS CLI 工具中执行此操作,我都没有偏好,但是我需要对我的特定文件采取哪些步骤/操作才能正确配置 ELB 与 SSL?

【问题讨论】:

    标签: amazon-web-services ssl amazon-elb pki


    【解决方案1】:

    首先,不要通过旧的 IAM 服务方式来做这件事,使用新的 AWS ACM 服务来管理证书。 ACM 服务也有一个很好的 Web 界面来执行此操作。

    您获得证书的公司应该能够告诉您哪个文件是链文件,是的,如果您希望浏览器正确地将您的 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?或者有没有办法在这个参数中同时指定它们?再次感谢!
    • 1.这是一篇旧博客文章,甚至在顶部有一条警告说它可能已经过时,所以不要听从他关于通过 AWS CLI 使用 IAM 服务的建议。这只是在 ACM 服务可用之前必须使用的旧方法。 2. 他告诉您“将以下命令的输出粘贴”到一些文件中,这也正是您需要粘贴到 AWS ACM Web 控制台中的内容。 3. 如果您查看证书链命令,他实际上是将两个命令链接在一起以从这两个文件创建证书链。
    • 这篇博文中唯一需要关注的部分就是以“Private Key”、“Public Key Certificate Field”和“Certificate Chain Field”为标题的三个部分。从中您将获得需要上传到 AWS 的三个 PEM 编码文件。
    猜你喜欢
    • 1970-01-01
    • 2018-12-04
    • 2017-08-03
    • 2019-10-07
    • 1970-01-01
    • 2019-01-23
    • 1970-01-01
    • 2017-08-10
    • 2017-04-06
    相关资源
    最近更新 更多