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

问题描述 投票:10回答:1

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

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

amazon-web-services security amazon-ec2 elastic-beanstalk
1个回答
13
投票

关于你可能缺少的Security Group Rules的重要概念是,你不一定只指定IP地址作为流量源,而是经常引用其他安全组:

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

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

[强调我的]

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


Taking this further

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

例如,大型体系结构的推荐做法建议为每个实例具有的“角色”指定一个专用安全组(而不是像往常一样在一个安全组中累积多个规则),例如:我们有安全组,如'role-ssh'(TCP端口22)和'role-mysql'(TCP端口3306),它们依次分配给EC2实例。你可以在例如更多地了解这个概念。 Security Groups - Most Underappreciated Feature of Amazon EC2

© www.soinside.com 2019 - 2024. All rights reserved.