我第一次设置AWS EB时创建的默认安全组是什么?

oro*_*ome 16 security tcp http amazon-web-services amazon-elastic-beanstalk

我对几个似乎已经自动添加到我的AWS安全组列表中的组所扮演的角色感到困惑,我收集的是默认配置,并且想知道它们是如何工作的(以及它们如何安全)更改).具体来说,有三个是神秘的:

  • launch-wizard-1 它有一个入站规则SSH,TCP,22,0.0.0.0/0.
  • default描述为"默认VPC安全组",它具有所有流量的入站规则以及将自身用作源的所有端口.
  • default_elb_... 描述为"在ELB创建期间未指定安全组时使用的ELB创建的安全组 - 修改可能影响到未来ELB的流量",其具有允许来自所有IP地址的HTTP的入站规则

前两个似乎没有连接到任何其他安全组,而后者是我的Elastic Beanstalk环境的每个安全组中的入站HTTP规则的源.

这三个小组做了什么?我可以改变它们吗?或改变与他们的联系?

例如,后一条规则似乎具有允许从任何地方到我所有EB环境的HTTP流量的效果.我可以更改此规则以限制IP(到所有环境)吗?我可以"解除"规则作为来自给定EB环境的源(例如将其替换为具有一系列IP的源)吗?

scu*_*dev 20

看起来您已经了解了安全组的内容:应用于EC2实例的状态防火墙.

当您从Web控制台手动启动EC2 VM时,AWS将为您提供重用现有安全组或创建新安全组的选项.创建新规则时,默认规则为SSH(端口22),默认安全组名称为" launch-wizard-# ".

遗憾的是,由于多个EC2实例可以使用安全组,因此在删除VM时不会清除它们.因此,如果删除了创建启动向导1的VM,则不会删除安全组.

在"VPC的默认安全组"上.创建VPC时,会同时创建一个默认安全组.当EC2实例启动到VPC子网时,如果未指定另一个实例,则它们将为其分配默认安全组.(http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html#DefaultSecurityGroup).

那么这条规则意味着什么才能让它与自己交谈?默认情况下,安全组拒绝所有入站流量.这种"与自身对话"的入站规则表明,如果两个虚拟机都分配了这个规则,则允许它们在所有端口上相互通信.你应该使用这个默认组吗?否.创建执行最小权限规则的唯一安全组(仅打开需要它们的实例所需的端口).

不幸的是,我没有太多弹性的beanstalk经验,所以这就是我的回答转向假设的地方.在我用beanstalk玩的那些小东西中,我记得它在你的帐户中创建了辅助资源.您的Elastic Load Balancer(ELB)就是这种情况.如说明所示,当Elastic Beanstalk需要启动新的负载均衡器时,负载均衡器将使用此默认组,除非您指定另一个.我相信这个链接记录了你将如何做到这一点(http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.elb.html).

在所有情况下,我建议不要使用默认安全组来支持该实例的安全需求所特有的各个防火墙规则.

你能改变或删除这些吗?

  • launch-wizard-1:是的,您可以删除或修改该组.既然你提到他未被使用,请继续训练他.
  • 默认:VPC对它创建的一些默认资源很挑剔.我在我的帐户上测试了它,我无法删除它.你当然可以修改它,但我建议你不要使用它.
  • default_elb:如果我没记错的话,弹性beanstalk使用cloudformation来创建额外的资源,例如ELB安全组.您可以修改此安全组,但它会在cloudformation定义和现实之间产生不一致.对于您的特定问题,您可以更改允许的IP范围,但如果您在私有IP上编写规则,则在将环境部署到单独的VPC时,您将无法跨越环境.