如何关闭对负载均衡器以外的所有实例的访问?

How to close access to instance to all except load balancer?

我的 ec2 实例上有一个 Web 应用程序(nginx + go,docker)。我需要添加https。为此,我在 ACM 和负载均衡器(LB、https -> http)中创建了新证书。然后我在 Route53 中为 LB 添加了新记录(例如 lb.example.com)。现在,我的应用可通过以下方式获得:

我希望我的应用程序只能通过 https://lb.example.com(通过 lb,通过 https)使用。我怎样才能做到这一点 ?我不能在nginx中使用server_name,因为LB不支持它。

谢谢。

在您实例的安全组中,您可以仅允许 HTTP,而不是通过 IP 地址允许来源,而是使用 ELB 安全组的 ID。这样只有来自 ELB 的流量才会被实例接受。

https://aws.amazon.com/blogs/aws/building-three-tier-architectures-with-security-groups/