AWS - 从Beanstalk App配置对EC2实例的访问

ste*_* mc 10 security amazon-ec2 amazon-web-services amazon-elastic-beanstalk

因此,出于Id而不是进入的原因,我的数据库位于eu-west-1的EC2实例上,我在us-east-1上创建了一个beanstalk应用程序.我喜欢我的应用程序与MySQL端口上的EC2实例交谈(3306).

任何人都可以协助我如何设置这个,我需要在EC2安全组上设置哪些入口规则?鉴于我将在beanstalk中有多个版本的应用程序,IP地址可能会定期更改(在环境重建之后等).

Ste*_*pel 13

您可能缺少的有关安全组规则的重要概念是,您不一定仅将IP地址指定为流量源,而是定期引用其他安全组:

源可以是单独的IP地址(203.0.113.1),一系列地址(例如,203.0.113.0/24)或EC2安全组.安全组可以是您的AWS账户中的另一个组,另一个AWS账户中的组或安全组本身.

通过将安全组指定为源,您可以允许来自属于源安全组的所有实例的传入流量.[...]如果要创建三层Web服务,则可以在帐户中指定另一个安全组(请参阅创建三层Web服务).

[强调我的]

因此,您只需要将Beanstalk应用程序实例安全组添加为MySQL实例安全组内TCP端口3306的流量源.


更进一步

使自己熟悉的另一个概念是,您可以将多个安全组分配给实例,从而实现(可能是动态的)最终防火墙的组合.

例如,大型体系结构的推荐做法建议为每个"角色"指定一个专用的安全组,而不是像往常一样在一个安全组中累积多个规则,例如,我们有像"role-ssh"这样的安全组(TCP)端口22)和'role-mysql'(TCP端口3306),根据需要依次分配给EC2实例.您可以在例如安全组 - Amazon EC2的最不受重视的功能中阅读有关此概念的更多信息.