【问题标题】:Enabling SSL on a subdomain with AWS S3 and ACM使用 AWS S3 和 ACM 在子域上启用 SSL
【发布时间】:2018-07-07 06:11:35
【问题描述】:

我有一个位于 S3 上的站点 example.com。我已经为这个站点成功设置了 HTTP -> HTTPS 转发。

我还有一个子域blog.example.me,它也存在于 S3 上,我想用它来启用 SSL。目前,它只支持 HTTP。我使用 Route 53 进行路由,使用 Cloudfront 作为 CDN。

我已查找有关此问题的文档,但尚未找到可行的方法。我必须创建一个新证书,还是可以使用example.com 使用的相同证书?如果我可以使用相同的证书,我应该从哪个 AWS 开始?

【问题讨论】:

  • 对于证书,它取决于它的 wildcard certificate 是否涵盖通配符证书的整个域示例将是*.example.com,您可以为您的 sub domain 使用相同的证书。
  • @iamcaleberic 我有两个证书 - 一个用于 example.com,另一个用于通配符证书 - *.example.com。你认为他们在某种程度上是冲突的吗?
  • 一个通配符证书*.example.com可以覆盖主域和子域。虽然应该没有冲突,因为您在创建云端分发时选择了要使用的证书。
  • 为您的博客确保使用通配符*.example.comexample.com one wont work

标签: amazon-web-services ssl amazon-s3


【解决方案1】:

对于证书,它取决于它的通配符证书是否涵盖了通配符证书的整个域示例将是*.example.com,您可以为您的sub domain(s) 使用相同的证书

使用 S3 和 Cloudfront 的典型托管安全站点将遵循以下步骤

Create an S3 Bucket

桶名 - 你的域名

选择您的存储桶,转到属性 -> 静态网站托管,然后启用 网站托管

授予公共读取权限以允许云端从您的存储桶中读取。

Get SSL certficate/ Use existing if applies

AWS 提供免费的 SSL 证书,适用于支持 SNI 的浏览器。您可以导入自己的 SSL 证书。

CloudFront configuration

创建一个新的 Web 分发。在 Origin Settings 下,使用 Endpoint 您从 S3 存储桶的静态托管设置中复制。很多别的 指南在没有解释原因的情况下指导这一点 — 这是因为如果你 使用您的 S3 存储桶配置了重定向规则,并且您指定 内部 AWS S3 资源,重定向将不再起作用。 因此,您必须指定网站端点域以确保 重定向功能有效。

在默认缓存行为设置下,值得选择重定向 HTTP 到 HTTPS 并缩小允许的 HTTP 方法 — 对于 静态网站,GET 和 HEAD 都可以。

在云端分发设置下配置:

  • 在备用域名下设置您的域名 (yourdomain.com, 以及可选的 www.yourdomain.com)
  • 通过选择自定义 SSL 证书配置 SSL,然后选择 在证书管理器中生成或导入证书。
  • 最后,指定默认根对象。这应该与您的 S3 匹配 bucket 的索引文档,通常是 index.html。这简直就是所有 当客户请求您的网站 URL 时,请求被重定向到 没有路径

Route 53 configuration:

  • 前往托管区域

  • 为您希望使用的域或子域选择托管区域

  • 为您的站点创建一条记录:选择别名,然后在下拉列表中您应该会看到您的云端分发,选择它作为您的别名目标并保存。

更多详细信息请查看:https://medium.com/@willmorgan/moving-a-static-website-to-aws-s3-cloudfront-with-https-1fdd95563106

【讨论】:

  • cloudfront 不允许我添加我的第三方证书 - 选项显示为灰色
猜你喜欢
  • 2018-04-13
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 2017-12-13
  • 2017-07-24
  • 2014-10-16
  • 2021-04-16
  • 1970-01-01
相关资源
最近更新 更多