我正在运行一个Amazon EC2实例,我想向该实例添加另一个安全组,然后从该实例中删除当前的安全组。这可能吗?

评论

仅添加更多信息。我们有两个实例联合到两个安全组。我们要对此进行分隔,并为每个实例指定一个安全组。

#1 楼

2015年2月27日更新:

现在有可能,请参见下面的答案。

旧回复:

Amazon的常见问题解答说这不可能可以在启动时以外的任何地方定义安全组。

评论


谢谢,我在浏览常见问题时错过了这个问题。再次感谢。

– Geo
2009年7月7日15:46

这个答案已经过时了。现在,您可以修改EC2 VPC安全组。请参阅下面的@hanxue答案。

–迭戈·费尔南德斯·杜兰
15年2月26日在12:21

需要更新!!见下面的答案

–轴
19年1月4日在2:49

#2 楼

更新:自2014年1月起,您现在可以更改运行AWS EC2实例的安全组。

AWS控制台

只需右键单击一个实例,然后单击Change Security Group



添加/删除安全组,并在完成后单击Assign Security Groups




EC2命令行

使用以下命令:

ec2-modify-instance-attribute <instance-id> --group-id <group-id>


AWS命令行

使用以下命令:

aws ec2 modify-instance-attribute --instance-id i-12345 --groups sg-12345 sg-67890


注意,必须指定与实例相关联的所有安全组。

评论


菜单中存在“更改安全组”选项,但已禁用。我正在使用区域ap-southeast-2。

–阿拉斯泰尔·欧文(Alastair Irvine)
2014年1月30日8:45

当前仅适用于VPC实例。非VPC实例所属的安全组是固定的/不可变的,并在首次启动时设置。更改它们的唯一方法是从现有实例创建捆绑包,然后使用捆绑的ami重新启动新实例。

–ives
2014年4月9日在21:36

如果我的新创建的安全组未在“更改安全组”模式中列出,该怎么办?

– 2540625
2015年12月8日,0:02

此选项可能仅在VPC内部可用。在vpc之前创建并具有以EC2经典模式运行的实例的旧AWS账户将无法利用这一优势。

–cgseller
16 Mar 15 '16 at 19:48

令人困惑的是,CLI不像许多其他地方那样使用逗号分隔的列表。

–user67327
19年7月16日在14:18

#3 楼

现在可以执行此操作。单击操作菜单,然后单击“更改安全组”-选择要使用的安全组。

评论


我相信,仅在VPC中。

–ceejayoz
2014年1月8日14:00

看起来是这样。菜单中显示“更改安全组”选项,但对于非VPC实例禁用该选项。

–阿拉斯泰尔·欧文(Alastair Irvine)
2014年1月30日8:41

如果我的新创建的安全组未在“更改安全组”模式中列出,该怎么办?

– 2540625
2015年12月8日,0:03

#4 楼


从要移至其他安全组的实例中创建AMI映像。
使用该映像启动新实例,现在我们可以将此新实例分配给其他安全组。
丢弃前一个实例。

这需要您的实例停机。使用API​​可能还有其他一些选项。

#5 楼

正如Towo所说,除了启动时间之外,您无法在任何地方更改实例的安全组。

除非您使用的安全组不同于EC2安全组的VPC。

此页面概述了EC2和VPC安全组之间的区别。

http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html

因此,如果您需要VPC组(更改组,控制入口/出口流量等),您可能需要查看VPC提供的其他功能。

评论


欢迎来到服务器故障!尽管从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。

–斯科特包
2012年11月21日,0:55



#6 楼

截至2016年11月24日。@hanxue给出的上述答案是正确的,但并不完整。 AWS中有两种类型的实例:私有云中称为vpc实例的实例和公共实例Ec2 Classic。您只能更改VPC实例的安全组,而不能更改EC2-classic。您想查看的AWS官方文档屏幕截图。您想看的文档



#7 楼

如果您使用的是boto3,则需要调用Modify_attribute并传递组ID列表。

http://boto3.readthedocs.io/en/latest/reference/services/ec2.html#EC2.Instance .modify_attribute

response = instance.modify_attribute(Groups=['string'])

Groups (list) --
  [EC2-VPC] Changes the security groups of the instance. You must 
  specify at least one security group, even if it's just the default 
  security group for the VPC. You must specify the security group ID,
  not the security group name.


#8 楼

在新的AWS GUI中,只需选择要向其添加安全组的实例,在顶部导航区域中选择操作,然后在安全性上进行选择。欢迎您

#9 楼

5个安全组

>每个安全组可以具有50个入站规则和50个出站规则>总共提供100个入站和出站组合。您最多可以为一个网络接口分配5个以上的安全组。如果您需要增加>或减少此限制,可以联系AWS支持。

评论


如果对其他答案之一发表评论,这样做会更好。

–丹尼尔K
19年11月29日在12:36

#10 楼

但是,根据此常见问题解答“修改当前安全组的设置-这会影响在特定组中运行的所有实例”,您可以更改并逐渐重新定义现有实例。
由于我现在正在针对我的方案尝试这种操作EC2控制台,我的记录全部被擦除!