我们将Amazon的CloudFront CDN与自定义CNAME挂在主域(static1.example.com)下一起使用。尽管我们可以打破这种统一外观,并使用原始的what123wigglyw00.cloudfront.net URL来利用HTTPS,但是还有另一种方法吗?

亚马逊或任何其他类似的提供商是否提供HTTPS CDN托管?

TLS及其选择性加密是否可以在某处使用(SNI:服务器名称指示)?

脚注:假设答案是否定的,但是希望有人知道。
/>
编辑:现在使用Google App Engine https://developers.google.com/appengine/docs/ssl进行具有SSL支持的CDN托管。

#1 楼

不支持带有CNAME和HTTPS的CloudFront,请参阅CloudFront CNAME文档中的第一条注释。

我认为没有任何低成本CDN可以同时支持CNAME和HTTPS,因此它们必须为您提供一些将未加密证书上传到其CDN网络的方法。 br />

评论


或以与Google通过Google Apps和eNom / GoDaddy提供DNS配置相同的方式进行代理。 en.wikipedia.org/wiki/Server_Name_Indication将来有希望,我想知道是否有任何提供商已经开始试用此功能。

–金属鲨鱼
10年7月26日在18:55

请注意2016年:此答案已过时,请参阅下面的John Mark Mitchell的答案。

–本杰明
16年2月8日在12:42

#2 楼

请注意下面的编辑和更新

在撰写本文时(2012年5月23日),仅通过CloudFront分发URL支持SSL。意思是,您不能CNAME SSL URL。具体来说,您可以通过SSL引用以下项目:

https://[distribution].cloudfront.net/picture.jpg


,但不能:

https://cdn.mydomain.com/picture.jpg


其中cdn .mydomain.com是[distribution] .cloudfront.net的CNAME。目前您会收到SSL错误。

这意味着您无法使用域名或SSL证书。这可能会导致浏览器中的跨域策略出现问题,并给站点维护增加撤消复杂性。

AWS工作人员向我保证,HTTPS支持分发CNAME在其功能列表中,但需要社区支持来确定优先级。为了帮助完成这项工作,请填写CloudFront调查(请参阅下文),并注意此功能要求。 AWS员工使用从调查中收集的数据来计划和确定CloudFront路线图的优先级。

请务必注意,在进行CloudFront调查时需要HTTPS CNAME支持:http://aws.qualtrics.com / SE /?SID = SV_9yvAN5PK8abJIFK

编辑:注意到2012年6月11日发布的帖子,AWS已更新了调查链接:

新调查链接:http:// aws .qualtrics.com / SE /?SID = SV_e4eM1cRblPaccFS

我认为值得向他们提供有关使CNAME + SSL成为受支持功能的反馈。

编辑:宣布2013年6月11日,AWS上的CloudFront现在支持具有专用IP的自定义SSL证书:

请参阅AWS博客上的功能公告:http://aws.typepad.com/aws/2013 /06/custom-ssl-domain-names-root-domain-hosting-for-amazon-cloudfront.html

在考虑采用此方法之前,需要考虑的一项内容是,您需要从偏离https:// [distribution] .cloudfront.net路由作为pr托管自定义SSL证书的费用为每月$ 600 USD。

编辑:2014年3月5日宣布,AWS上的CloudFront现在支持使用服务器名称指示(SNI)的自定义SSL证书-无需额外付费:

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)确实有一点需要注意,但在完全依赖它之前应该考虑一些缺点。特别是某些旧版浏览器不支持此功能。如果想更好地理解这一点,请参阅:https://stackoverflow.com/questions/5154596/is-ssl-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 /

Amazon宣布了一项名为AWS Certificate Manager的新服务,该服务为AWS资源提供免费的SSL / TLS证书。 >
这些证书通常是从Symantec,Comodo和RapidSSL等第三方证书提供商处购买的,价格从50美元到数百美元不等,具体取决于所执行的身份验证的级别。

获取新证书的过程始终有些混乱,需要在受保护的服务器上生成证书签名请求,然后将该请求发送到证书提供者,然后再安装g收到证书后。由于Amazon管理着整个流程,因此所有这些都不用了,可以快速颁发证书并自动在AWS资源上进行供应。

证书有一些限制。 Amazon仅提供域验证证书,这是通过电子邮件进行域验证的简单验证。如果您需要扩展验证证书,则可以坚持使用其当前的证书提供者。此外,证书不能用于代码签名或电子邮件加密。

评论


developers.google.com/appengine/docs/ssl对其进行记录。在尝试让AWS支持该功能2年之后,在竞争对手已经发布该功能时对其进行投票是为时太晚。

–金属鲨鱼
2012年7月12日在8:13



cmon AWS,我同意@Metalshark和该线程上的每个人。我刚刚填写了AWS Cloudfront荒谬的反馈表来倡导CNAME-HTTPS,但是如果Google App Engine提供了该反馈并且这个问题已经2年了,您就必须尽快采取行动!!!

–蒂姆·彼得森
2012年8月7日在17:04

我在Google App Engine页面上看不到有关CDN的任何内容。 AWS已经为其他所有内容提供免费的SSL支持,但是CDN支持却更加困难。不要引用我,但我怀疑是因为涉及多个IP地址。

–鲁珀特·罗恩斯利(Rupert Rawnsley)
13年12月6日在17:48

约翰,感谢您不断更新此答案。我刚刚删除了一些已纳入答案的过时评论。如果您只是删除过时的信息而不是使用删除线,则可能更容易阅读答案。通过单击上次编辑答案时显示的链接,可以获得答案的完整修订历史记录。

–斯蒂芬·奥斯特米勒(Stephen Ostermiller)
16-2-23在14:18