AWS EC2 安全组文档提到“EC2-VPC 的安全组具有 EC2-Classic 的安全组不支持的附加功能”,但安全组仪表板未提供有关安全属性“功能”的任何信息允许我区分我正在查看的安全组类型或附加的安全组的组,例如,我无法确定我是否可以整合安全组并在 EC2 实例之间共享它们(以便于管理):
- 如何确定给定的安全组是否适合给定的实例?
- 如何确定安全组是否与哪些实例相关联(我在 Instances 控制台中看到了如何执行相反操作)?
AWS EC2 安全组文档提到“EC2-VPC 的安全组具有 EC2-Classic 的安全组不支持的附加功能”,但安全组仪表板未提供有关安全属性“功能”的任何信息允许我区分我正在查看的安全组类型或附加的安全组的组,例如,我无法确定我是否可以整合安全组并在 EC2 实例之间共享它们(以便于管理):
要查找与 security group 关联的所有实例My-SG
,请使用以下 AWS CLI 命令:
aws ec2 describe-instances --filters "Name=instance.group-name,Values=My-SG" --query 'Reservations[*].Instances[*].[Tags[?Key==`Name`].Value]' --output text
EC2-VPC 的安全组具有 EC2-Classic 的安全组不支持的其他功能
这仅在您拥有实际支持 EC2 经典的 AWS 账户时才相关。如果该帐户不到几年,则您不支持 EC2 经典。安全组在 EC2 经典版中的工作方式不同,因为它是一个完全扁平的网络。随着 VPC 的创建,安全组现在由 VPC 隔离。
- 如何确定给定的安全组是否适合给定的实例?
这完全取决于您和实例上的内容。安全组是一个通用概念,可以应用于任何实例。例如,如果实例正在运行需要联系 DynamoDB 的东西,那么您需要为该实例提供一个支持该交互的安全组。同样,如果您有一个正在运行 Web 服务器的实例,您可能需要一个公开端口 80 的安全组。
- 如何确定安全组是否与哪些实例相关联(我在 Instances 控制台中看到了如何执行相反操作)?
即使假设您只想查看 EC2 组而不是 RDS 之类的东西,通过 GUI 完成这可能会非常艰巨,具体取决于实例的数量。使用 CLI 和如下命令最容易完成:
$ aws ec2 describe-instances --output text | grep sg-{Some id}