使用AWS S3和ACM在子域上启用SSL

时间:2018-01-28 12:06:43

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

我有一个生活在S3上的网站example.com。我已经设置了HTTP - >此站点的HTTPS转发成功。

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

我已经找到了关于这个问题的文档,但还没有找到有用的东西。我是否必须创建新证书,或者我可以使用example.com使用的相同证书吗?如果我可以使用相同的证书,我应该从哪个AWS开始?

1 个答案:

答案 0 :(得分:3)

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

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

Create an S3 Bucket

存储桶名称 - 您的域名

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

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

Get SSL certficate/ Use existing if applies

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

CloudFront configuration

  

创建新的Web分发。在“原始设置”下,使用“端点”   您从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