专有网络VPC不仅可以通过网络ACL实现访问控制,还可以依赖各个云产品的访问控制能力来实现安全访问,例如云服务器ECS通过设置安全组来进行访问控制,负载均衡SLB和云数据库RDS通过白名单来进行访问控制。本文介绍VPC访问控制的几种方式。
您可以通过以下几种方式实现对VPC的访问控制:
网络ACL:网络ACL是VPC中的网络访问控制功能。您可以自定义设置网络ACL规则,并将网络ACL与交换机绑定,实现对交换机中ECS实例的流量的访问控制。
安全组:安全组是一种虚拟防火墙,具备状态检测和数据包过滤能力,用于在云端划分安全域。通过配置安全组规则,您可以控制安全组内一台或多台ECS实例的入流量和出流量。
RDS白名单:在VPC中使用云数据库RDS实例,需要将云服务器的IP地址加入到需要访问的RDS的白名单中,云服务器才能访问RDS实例,而其他IP地址将拒绝访问RDS实例。
SLB白名单:负载均衡是将访问流量根据转发策略分发到后端多台云服务器的流量分发控制服务。您可以为负载均衡监听设置允许转发请求的IP地址,适用于只允许特定IP访问应用的场景。
网络ACL和安全组的基本差异如下表所示。
与交换机绑定的网络ACL规则控制流入和流出交换机的数据流,与ECS实例相关的安全组规则控制流入和流出ECS实例的数据流。
对比项 | 网络ACL | 安全组 |
运行范围 | 在交换机级别运行。 | 在ECS实例级别运行。 |
返回数据流状态 | 无状态:返回数据流必须被规则明确允许。 | 有状态:返回数据流会被自动允许,不受任何规则的影响。 |
是否评估规则 | 不评估所有规则,按照规则的生效顺序处理所有规则。 | 执行规则前,会评估所有规则。 |
与ECS实例的关联关系 | ECS实例所属的交换机仅允许绑定一个网络ACL。 | 一个ECS实例可加入多个安全组。 |
网络ACL和安全组提供的安全层如下图所示。