在不使用安全组的情况下限制 EC2 应用程序对我们开发人员 IP 的访问

Limiting access of EC2 app to our developer's IPs without using security groups

在 AWS 上,我们的 EC2 容器托管了一个同时运行后端和前端服务器的应用程序。前端服务器是面向客户的应用程序,我们希望向 public 开放,我们的后端服务器托管管理面板,只有管理员和开发人员才能从 Web 访问该面板。

通常情况下,我们可以创建一个安全组来过滤谁可以访问该应用程序。但是,这样做也会阻止用户访问前端应用程序。

我们正在寻找一种解决方案,不仅可以区分用户的 IP,还可以考虑他们是试图访问前端 URL 还是后端 URL。

有什么建议吗?谢谢!

此逻辑将决定从网络层保护转移到应用层,您正试图阻止基于 URI 的访问,因此安全组或 NACL 等功能将不起作用。

取而代之的方法是使用 WAF 作为应用程序前面的保护层。

为此,您可以将开发者 IP 添加到 IPSet then apply ordering through a rule group 以始终允许来自这些 IP 的请求。在此之后,第二条规则将评估请求的路径并在它与特定模式匹配时阻止。最后将允许所有其他请求。

WAF 需要附加到 Application Load Balancer 或 CloudFront,因为它不能直接附加到 EC2 实例。