AWS安全组用于新启动的实例

在AWS中,我们的自动扩展组正在不同的可用区域中启动新的实例(以获得高可用性),而这些Web实例当然需要在端口3306上访问数据库(RDS)服务。

现在,我的RDS安全组应该允许哪些IP地址用于端口3306?

由于每个新启动的实例每次都有不同的IP地址,那么我们如何将它们添加到安全组?

顺便说一句:这不仅仅是RDS安全组的问题,而是所有安全组的问题,因为我不能限制它们。

您不会将EC2实例的IP地址添加到您的RDS安全组,您添加另一个安全组。 这为安全组中的每个实例都提供了EC2实例访问RDS安全组/资源的权限。

在这个稍微模糊的图像,你可以看到我的networking安全组(结束f4)被添加到我的RDS安全组(结束C6)。

RDS访问EC2实例

您可能会注意到一个相关的概念是IAMangular色 。 在这种情况下它们不适用,但它们对于知道有用。 他们可以允许EC2实例访问实际上任何EC2资源(例如S3),而不必存储凭证。 EC2实例需要以angular色启动,但我相信angular色策略可以随时更改。

您新启动的实例将连接到他们自己的安全组。 也许他们是一个自动规模组的一部分,但它并不重要。 您可以使用实例正在使用的安全组来访问您的RDS实例: 在这里输入图像说明

注意这里我们有一个RDS安全组,它有一个允许来自自定义源的TCP端口3306的通信的条目,自定义源是你的实例连接到的安全组的安全组ID。