首页 > 解决方案 > 如何在 EC2 实例上为来自托管 s3 存储桶的请求创建入站规则

问题描述

我有我的网络应用程序,用 vue 编写,并使用静态网站托管部署在 S3 上。

我还有一个 EC2 实例设置,它将作为我的应用程序的后端。

我的问题是,我想将对 EC2 实例的访问限制为仅来自 S3 上托管的站点的请求。那可能吗?

我在 EC2 实例的安全组中看到,我可以指定入站流量规则以限制来自特定 IP 地址。但是我不确定如何将其限制为来自特定域的流量

标签: amazon-web-servicesamazon-s3amazon-ec2

解决方案


与您的后端通信的 S3 应用程序实际上将使用最终用户的 Internet 连接进行通信,因此如果您的应用程序应该公开可用,则您不能使用安全组来阻止此访问。

但是,您可以将其锁定,以便只能从有效域调用应用程序。

为此,需要能够通过referer标头控制流量,这需要您配置AWS WAF并添加规则集以允许引用标头是您的域。然后对于默认逻辑,它需要阻止它。

要使用 WAF,它需要附加到以下资源之一:

该资源将位于 EC2 主机的前面。

有关更多信息,请查看如何使用 AWS WAF、Amazon CloudFront 和Referer Checking 防止热链接博客文章。


推荐阅读