【问题标题】:how to configure CloudFront with ec2 instance and elastic ip如何使用 ec2 实例和弹性 ip 配置 CloudFront
【发布时间】:2018-05-09 04:25:12
【问题描述】:

我在aws-ec2 实例上托管了一个博客(codeoverflow.in)。我正在使用cloudfrontacm 证书为我的博客提供ssl。但是当我访问 codeoverflow.in 或 www.codeoverflow.in 时,cloudfront 将我成功重定向到 https 版本,但出现以下错误:

无法满足请求。 CloudFront 无法连接 到原点。由 cloudfront (CloudFront) 生成的请求 ID: TE89T-COJiVFgBGUpBG_2gWd6Iim3c-svHsborUct49O9Owjb3nl6g==

我在路由 53 中有 codeoverflow.in 和 www.codeoverflow.in 的类型 A 和类型 AAAA 别名记录,都指向 cloudfront 分发。还为这两个域配置了自定义 ssl 证书。到目前为止,我已经分离了弹性来自 ec2 的 ip,但我也想将它与 cloudfront 和 ec2 一起使用。请帮我一起配置所有三个。

【问题讨论】:

    标签: amazon-web-services ssl amazon-ec2 amazon-cloudfront elastic-ip


    【解决方案1】:

    您似乎正在尝试通过 HTTPS 连接到您的源,但听起来您的实例上没有启用 SSL。

    最简单的做法是为您的来源使用主机名 - 即 www-origin.codeoverflow.in。创建一个同时监听 80 和 443 的负载均衡器,为其部署适当的证书(您可能必须创建一个新证书或创建通配符)并将您的实例放在端口 80 上的监听后面。最后,创建一个别名记录在 Rour53 从 www-origin 到您的负载均衡器。

    【讨论】:

    • 好建议。如果您在源 or even a missing certificate chain 上有自签名或其他不受信任的证书,也会发生此错误。由于证书信任问题,有时“无法连接”在技术上意味着“不愿连接”。
    • @Michael-sqlbot:你确定这是真的吗?我知道 ELB 将使用带有自签名证书的 SSL 连接到 EC2 实例——它不进行证书验证。但是,我实际上还没有测试过将 EC2 直接放在 Cloudfront 后面。
    • 是的,CloudFront 对源的 SSL 验证非常严格。 "警告:如果源服务器返回过期证书、无效证书或自签名证书,或者源服务器返回证书链顺序错误,CloudFront 会断开 TCP 连接,返回 HTTP 错误代码 502 ,并将X-Cache 标头设置为Error from cloudfront。" docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/…
    • 您的证书可能已正确部署在 Cloudfront 上。问题是云端无法安全地与您的服务器通信。
    • @user15460 你的服务器上有一个 SSL 证书,声称它是颁发给www.example.com 的(不是示例值,这是证书实际所说的)——换句话说,它是一个仅用于测试目的的占位符证书。您不能在具有 CloudFront 的源服务器上使用此证书,因为 CloudFront 正确地认为它不可信。
    猜你喜欢
    • 2018-02-15
    • 1970-01-01
    • 2014-04-30
    • 1970-01-01
    • 2020-08-29
    • 2014-03-03
    • 2016-02-23
    • 1970-01-01
    • 2020-11-17
    相关资源
    最近更新 更多