如何配置 S3 以托管私有静态网站
how to configure S3 to host a private static website
我需要在 S3 上托管一个最小化的网络应用程序(静态),但我做不到 public。我想让只有少数人可以访问它,因此我想知道是否可以配置 aws 以允许某些 IP 地址或某些 IAM 用户(aws 用户)访问我的静态网站的 url )
有人知道我该怎么做吗?或者甚至可能吗?
是的,这是可能的。但它有成本影响
- 创建存储桶 - Public 访问被阻止的设置!
- 创建 CloudFront 分配
- 在 CloudFront 分配中创建一个新的源
- 在设置过程中创建源访问身份(这是一个重要的步骤,它使 CloudFront 能够从 Public 被阻止的存储桶中获取内容
- 创建 WAF ACL(2.0 非经典)将您希望能够访问您网站的 IP 地址列入白名单
- 在 CloudFront 分发中启用 WAF
https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html
https://docs.aws.amazon.com/waf/latest/developerguide/waf-ip-set-creating.html
https://docs.aws.amazon.com/waf/latest/developerguide/cloudfront-features.html
或者更便宜的选择 - 设置一个 nginx(或任何其他类型的能够托管静态文件的服务器)来托管您的静态文件,并设置一个安全组和网络 ACL 以允许来自指定 IP 的流量
所以对于任何想知道的人,我找到了一种免费的方法来做到这一点。你可以在这里用法语找到如何做同样的事情,但在右边有一个英文视频:
https://aws.amazon.com/fr/premiumsupport/knowledge-center/block-s3-traffic-vpc-ip/
@Sándor Bakos 也提到了另一种方式,我没试过,但似乎也对,他说的只是成本问题。
祝你有美好的一天
我需要在 S3 上托管一个最小化的网络应用程序(静态),但我做不到 public。我想让只有少数人可以访问它,因此我想知道是否可以配置 aws 以允许某些 IP 地址或某些 IAM 用户(aws 用户)访问我的静态网站的 url )
有人知道我该怎么做吗?或者甚至可能吗?
是的,这是可能的。但它有成本影响
- 创建存储桶 - Public 访问被阻止的设置!
- 创建 CloudFront 分配
- 在 CloudFront 分配中创建一个新的源
- 在设置过程中创建源访问身份(这是一个重要的步骤,它使 CloudFront 能够从 Public 被阻止的存储桶中获取内容
- 创建 WAF ACL(2.0 非经典)将您希望能够访问您网站的 IP 地址列入白名单
- 在 CloudFront 分发中启用 WAF
https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html https://docs.aws.amazon.com/waf/latest/developerguide/waf-ip-set-creating.html https://docs.aws.amazon.com/waf/latest/developerguide/cloudfront-features.html
或者更便宜的选择 - 设置一个 nginx(或任何其他类型的能够托管静态文件的服务器)来托管您的静态文件,并设置一个安全组和网络 ACL 以允许来自指定 IP 的流量
所以对于任何想知道的人,我找到了一种免费的方法来做到这一点。你可以在这里用法语找到如何做同样的事情,但在右边有一个英文视频: https://aws.amazon.com/fr/premiumsupport/knowledge-center/block-s3-traffic-vpc-ip/
@Sándor Bakos 也提到了另一种方式,我没试过,但似乎也对,他说的只是成本问题。
祝你有美好的一天