我们有 50 多台外部(非 AWS)服务器,需要将它们列入多个(约 50 个)安全组(vpc)的白名单。除了规则数量的限制外,逐个向所有组添加和删除条目也是一件麻烦事。
我尝试将所有外部 IP 添加到单独的 SG,并将该 SG 列入其他 SG 的白名单,但显然这仅适用于内部(AWS)实例1。
还有其他方法可以实现这个吗?
答案1
当您说“将该 SG 列入其他 SG 的白名单”时,您到底是什么意思?
我只需创建一个具有这些规则的安全组,并将该安全组分配给所有实例。一个实例可以有多个安全组,并且规则在宽容的意义上是附加的。即默认拒绝,除非任何安全组中的任何规则允许访问。您必须创建新实例才能更改与 EC2 实例关联的安全组,但一旦它与组关联,所做的任何更改都会实时完成。
您还可以使用在子网级别工作的网络 ACL 来实现这一点。NACL 就像防火墙一样,它们在子网级别运行,尽管每个 NACL 都可以应用于多个子网。它们可以添加更多适用于子网中所有实例的“拒绝”规则,但不能打开安全组已关闭的端口。请记住,它们是无状态的,因此您需要添加传入和传出规则。
请注意,您链接的问题/答案是一种非常特殊的情况,不适用于您,涉及使用私有或公共 IP。安全组适用于私有 EC2 IP 或公共 IP。例如,我设置了安全组,只允许我的 CDN 提供商和我的家庭 IP 地址访问,这些 IP 地址肯定是公共 IP。