Cloudfront 通过自己的 SSL 证书提供服务
Posted
技术标签:
【中文标题】Cloudfront 通过自己的 SSL 证书提供服务【英文标题】:Cloudfront serving over own SSL certificate 【发布时间】:2011-07-07 01:55:10 【问题描述】:有谁知道在使用您自己的 CNAME 时是否可以通过 https 使用您自己的证书与 cloudfront 一起服务? 我什至找不到通过 S3 设置我自己的 SSL 证书的方法......所以我不确定这是否可能。
更新:如果有人对此问题的更新感兴趣 - maxcdn.com 提供在您的域上托管您的 SSL 证书,每月只需 59 美元的固定费用。
它不是亚马逊,但它甚至支持从您的服务器中提取并永久托管,或者如果您在指定的任何时间发送缓存控制标头,直到它再次获取原始 url。
整个报价非常整洁。 :D
【问题讨论】:
请注意我在下面的帖子 (***.com/questions/5164569/…),因为 AWS 现在通过两种不同的方法支持 SSL 证书。其中之一无需任何额外费用即可使用。 【参考方案1】:我对此进行了广泛的研究,不,目前不可能将 HTTPS 与 CNAME 一起使用,除非您能够忽略客户端上的证书名称不匹配。 HTTPS 适用于“简单”存储桶名称,但 CNAME 仅适用于完全限定域的存储桶名称。
AWS 一直在添加新功能,因此我可以看到它们在某些时候能够提供自定义证书,但目前尚不支持。
编辑:仍然无法直接访问 S3,但可以通过 CloudFront:http://aws.amazon.com/cloudfront/custom-ssl-domains/
【讨论】:
Tim,我建议您编辑您的帖子,因为这绝对不再正确,而且您的帖子排名非常高,可能会导致人们得出错误的结论。【参考方案2】:请注意下面的编辑和更新
我正在恢复这一点,因为亚马逊正在进行一项调查(在撰写本文时),该调查询问客户对他们的产品路线图的反馈。
查看此调查的可用帖子:
https://forums.aws.amazon.com/thread.jspa?threadID=26488&tstart=30
和直接调查链接: http://aws.qualtrics.com/SE/?SID=SV_9yvAN5PK8abJIFK
编辑:注意到 2012 年 6 月 11 日的一篇帖子,AWS 更新了调查链接:
查看此调查的可用帖子:
https://forums.aws.amazon.com/thread.jspa?messageID=363869
新的调查链接:
http://aws.qualtrics.com/SE/?SID=SV_e4eM1cRblPaccFS
我认为值得花时间向他们提供有关使 CNAME + SSL 成为受支持功能的反馈。
编辑:2013 年 6 月 11 日宣布,具有专用 IP 的自定义 SSL 证书现在支持 AWS 上的 CloudFront:
请参阅 AWS 博客上的功能公告:http://aws.typepad.com/aws/2013/06/custom-ssl-domain-names-root-domain-hosting-for-amazon-cloudfront.html
在选择这条路线之前,需要考虑的一个问题是,您需要看到偏离 https://[distribution].cloudfront.net 路线的巨大价值,因为托管自定义 SSL 证书的定价为每月 600 美元。
编辑:2014 年 3 月 5 日宣布,使用服务器名称指示 (SNI) 的自定义 SSL 证书 现在支持 AWS 上的 CloudFront -- 无需额外费用:
如下 wikichen 所述,AWS 现在支持通过 SNI 的自定义 SSL 证书。这是巨大的,因为它开启了利用 AWS 现有基础设施(IP 地址)的可能性。因此,AWS 不会为此服务收取额外费用!要了解更多信息,请阅读 AWS 博客文章:http://aws.typepad.com/aws/2014/03/server-name-indication-sni-and-http-redirection-for-amazon-cloudfront.html
有一点需要注意,服务器名称指示 (SNI) 确实有一些缺点,在完全依赖它之前应该考虑这些缺点。特别是一些较旧的浏览器不支持它。如果想更好地理解这一点,请参阅:Is SNI actually used and supported in browsers?
编辑:AWS 于 2016 年 1 月 21 日宣布,他们免费提供自定义 SSL 证书!
要阅读 AWS 网站上的完整公告:https://aws.amazon.com/blogs/aws/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/
亚马逊宣布了一项名为 AWS Certificate Manager 的新服务,为 AWS 资源提供免费的 SSL/TLS 证书。
这些证书通常从赛门铁克、Comodo 和 RapidSSL 等第三方证书提供商处购买,价格从 50 美元到数百美元不等,具体取决于所执行的身份验证级别。
获取新证书的过程总是有点混乱,需要在受保护的服务器上生成证书签名请求,将该请求发送给证书提供者,然后在收到证书后安装证书。由于亚马逊管理着整个流程,所有这些都消失了,证书可以在 AWS 资源上自动快速颁发和预置。
证书有一些限制。亚马逊仅提供域验证证书,这是一种通过电子邮件进行域验证的简单验证。如果您想要扩展验证证书,您可以坚持使用他们当前的证书提供商。此外,证书不能用于代码签名或电子邮件加密。
【讨论】:
调查完成。 CNAME + SSL 突出显示为我最重要的请求功能。希望其他人也能做到这一点。 也完成了调查。好地方。 我更新了上述调查的 URL。当我自己进行调查时,我注意到他们添加了一个特征排名练习。 13 个建议功能中的 1 个是“基于 HTTPS 的 CNAME 支持(自定义 SSL 证书) - 能够使用自定义 CNAME 来处理通过 HTTPS 传输的 SSL 流量。”我们正在关注...现在开始投票。 查看关于 2013 年 6 月 11 日宣布 AWS CloudFront 将开始支持自定义 SSL 证书的编辑。【参考方案3】:从今天开始,您可以将自己的 SSL 证书用于 AWS CloudFront http://aws.typepad.com/aws/2013/06/custom-ssl-domain-names-root-domain-hosting-for-amazon-cloudfront.html
但是
-
AWS 必须批准您的请求
您为与一个或多个 CloudFront 分配关联的每个 SSL 证书每月支付 600 美元 (!)。
【讨论】:
$600 仅在您使用专用 ips 的情况下【参考方案4】:只想用最新的 AWS 新闻更新这个问题。您现在可以在 CloudFront 上将 HTTPS 与 CNAME 结合使用,因为它现在支持使用服务器名称指示 (SNI) 的自定义 SSL 证书。
http://aws.typepad.com/aws/2014/03/server-name-indication-sni-and-http-redirection-for-amazon-cloudfront.html
设法为我在 S3 上的 CloudFront 分布式静态站点设置了免费的 1 类 StartSSL 证书,没有太多麻烦(请参阅:CloudFront error when serving over HTTPS using SNI)。
【讨论】:
【参考方案5】:现在可以为 Cloudfront 使用您自己的 SSL 证书,无需额外费用。所以 600$/m 的费用就没有了。
来自 AWS 时事通讯:
您现在可以通过服务器名称指示 (SNI) 自定义 SSL 将自己的 SSL 证书与 Amazon CloudFront 一起使用,无需额外费用。大多数现代浏览器都支持 SNI,它提供了一种使用您自己的域和 SSL 证书通过 HTTPS 传递内容的有效方式。您可以免费使用此功能进行证书管理;您只需为数据传输和 HTTPS 请求支付正常的 Amazon CloudFront 费率。
【讨论】:
以上是关于Cloudfront 通过自己的 SSL 证书提供服务的主要内容,如果未能解决你的问题,请参考以下文章
对 CloudFront 分配中的不同域使用不同的 SSL 证书?
使用 SNI 通过 HTTPS 提供服务时出现 CloudFront 错误
如何解决 AWS CloudFront SSL 证书不存在的问题