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.
更新:从 2014 年 1 月起,您现在可以更改安全组以运行 AWS EC2 实例。
AWS 控制台
只需右键单击一个实例,然后单击
Change Security Group
根据需要添加/删除安全组,
Assign Security Groups
完成后单击EC2 命令行
使用以下命令:
AWS 命令行
使用以下命令:
请注意,您必须指定您希望实例关联的所有安全组。
2015 年 2 月 27 日更新:
现在这是可能的,请参阅下面的答案。
老回复:
亚马逊的常见问题解答说,除了在启动时,不可能在任何地方定义安全组。
现在可以做到这一点。单击操作菜单和更改安全组 - 选择您要使用的安全组。
这需要您的实例停机。使用 API 可能还有其他一些可用的选项。
正如towo所说,除了启动时间之外,您无法在任何地方更改实例的安全组。
除非您使用安全组不同于 EC2 安全组的 VPC。
本页概述了 EC2 和 VPC 安全组之间的区别。
http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html
因此,如果您需要 VPC 组的额外功能(更改组、控制入口/入口流量等),您可能需要查看 VPC 提供的额外功能。
如果您使用的是 boto3,则需要调用modify_attribute并传递组ID列表
http://boto3.readthedocs.io/en/latest/reference/services/ec2.html#EC2.Instance.modify_attribute
截至 2016 年 11 月 24 日。@hanxue 给出的上述答案是正确的,但并不完整。AWS中有两种类型的实例:私有云中的实例称为vpc 实例和 公共实例称为 Ec2 Classic。您只能更改 VPC 实例的安全组,但不能更改 EC2-classic。您希望看到的 AWS 官方文档屏幕截图。 您想查看的文档
在新的 AWS GUI 中,只需选择要添加安全组的实例,在顶部导航区域选择操作,然后选择安全。不客气
5个安全组
> 每个安全组可以有 50 个入站和 50 个出站规则 > 总共有 100 个入站和出站组合。您最多可以将 > 5 个安全组分配给一个网络接口。如果您需要增加 > 或减少此限制,您可以联系 AWS Support。
但是,根据此常见问题解答“修改当前安全组的设置 - 这将影响特定组中运行的所有实例”,您可以逐步更改重新定义现有的。当我现在通过 EC2 控制台为我的场景尝试这个时,我的记录都被删除了!