让我们用 Amazon S3 加密

Dmi*_*rev 8 https amazon-s3

使用Let's Encrypt可以在我的静态 Amazon S3网站上使用https吗?

甚至我现在都有Let's Encrypt 封闭测试版邀请。但是如何将它与 Amazon S3 一起使用呢?

Mic*_*bot 7

这个问题的答案分为两部分。

但是,首先,使用“让我们加密”实际上与问题无关:它是证书颁发机构 (CA)。它发行 SSL (TLS) 证书,就像所有其他证书一样,除了它显然只会发行域验证 (DV) 证书,而且这些证书显然是免费发行的。但是最后两点(虽然有趣)也与问题无关。

那么,“我可以在 S3 上托管的静态网站上使用 Let's Encrypt 的 SSL 证书吗?” 不是正确的问题。唯一的问题是“我可以在我的 S3 上托管的静态站点上使用我提供的证书对我的域使用 HTTPS 吗?”

第一个答案:没有

网站端点不支持 https。

http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteEndpoints.html

第二个答案:是的。

如何?

S3 前面的 CloudFront。您可以将指向存储桶网站主机名的 CloudFront 分配配置为“自定义”源,然后将您的新 SSL 证书加载到 CloudFront,并将 DNS 更改为指向 CloudFront 而不是直接指向存储桶。

这是唯一一个使用所有原生 AWS 托管组件在 S3 中托管的静态网站上为您自己的域“安装”自己的 SSL 证书的解决方案。S3 服务不直接支持这一点,不支持 Let's Encrypt 证书或任何其他 CA 的证书。


小智 6

您可以在 S3 上存储您网站的文件,但要发布它,您需要使用 CloudFront。在那里,您将能够选择必须在 AWS IAM 证书存储中上传的自定义证书。如何上传自定义服务器证书:http : //docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs_manage.html


小智 -1

您可以使用 OpenSSL 创建您自己的 ssl 证书并通过 apache 配置应用它(假设您使用的是 apache)。但请注意,本地证书和 https 会有效地让所有浏览器向用户发出警告,表明在使用所述本地证书时您的网站可能“不安全”或“受到威胁”。您可以从认证机构获得 ssl 证书,尽管这需要周转并且通常需要花费一些钱。