如何限制从外部访问 EC2 但允许从 Elastic Beanstalk 实例访问?

如何限制从外部访问 EC2 但允许从 Elastic Beanstalk 实例访问?

情况如下:

我们有一台运行 Elasticsearch 和 Elastic Beanstalk (EB) 环境的 EC2 服务器。它们都位于同一个 VPC 中。

这是我的目标:

允许访问 EC2(9200 端口)仅有的来自 EB 生成的实例。

我做了什么以及发生了什么:

在 EC2 安全组内,我添加了一条规则,允许从 Elastic Load Balancer 的安全组访问端口 9200。没有用 - 超时。当尝试指定 EB 实例 IP 地址时 - 有效。

之后,我尝试了一个更精简的版本,只是为了看看问题出在哪里。创建一个空的安全组“elasticsearch-client”。然后创建一个安全组“elasticsearch-server”,并设置以下规则

Custom TCP Rule   |   TCP   |   9200   |   sg-xxxxxxxx (elasticsearch-client)

将服务器组附加到 Elasticsearch EC2 实例,将客户端组附加到我想从中进行搜索的新 EC2 实例。我尝试从客户端连接到服务器,但连接超时。如果我允许从任何地方进行连接,我可以连接到服务器,因此我知道 Elasticsearch 服务器至少可以正常工作。如果我在安全组中指定新的 EC2 实例的 IP,也可以从该实例进行连接。

我使用安全组的方式是否错误?还有其他方法可以解决这个问题吗?

任何帮助深表感谢。

相关内容