VPC(Virtual Private Cloud,虚拟私有云)是云计算环境中提供的逻辑隔离网络服务,允许用户在公有云中构建一个完全隔离的私有网络空间,适用于严格隔离网络域的情况,如根据业务、地域等划分不同的安全域,划分红/黄/绿区,划分办公/测试/生产网络,划分服务/运维不同网络平面等场景。
安全风险
不同的网络域通常有不同的安全等级和网络访问控制要求,网络间不隔离可能导致安全风险扩散、攻击横向移动、非法访问等多种风险。
如办公网需要准许访问公网且中病毒概率较高,而生产网需要受控提供面向公网的服务,生产网的机器必须通过发布或运维系统进行合法的变更、访问。如果不进行网络隔离,那么很难管控与Internet间的网络访问控制策略,办公电脑中病毒也很容易向生产网络机器横向扩散,也容易发生办公电脑绕过合法系统直接访问生产网机器的情况。
网络域/安全域并不适合用安全组隔离,主要原因是VPC间网络是天然隔离的且地址空间独立,不需要复杂的地址空间规划,有需要在VPC间有限的放通服务,可以使用privateLink等提供访问能力。而同一个VPC内划分不同的网络域,需要仔细规划地址空间,不同地址空间默认是网络全互通的,需要仔细根据地址组划分来配置安全组定义阻止或放通的规则,容易因配置失误导致意外的网络权限放通,易发生安全风险。
最佳实践
VPC隔离,通过PrivateLink提供跨VPC服务访问
当需要VPC间受控通信时,可以使用PrivateLink或VPC边界防火墙实现。PrivateLink是通过服务VIP(virtual IP,虚拟IP地址)方式实现跨VPC服务访问。如下图所示场景,使用VPC隔离网络,并用PrivateLink实现VPC1到VPC2某服务的访问。请参见通过PrivateLink跨VPC私网访问CLB。
使用PrivateLink终端节点策略可以控制哪些阿里云主体(RAM用户/角色)可通过终端节点访问阿里云服务。请参见终端节点策略。
将PrivateLink节点绑定安全组后,可以通过安全组限制仅允许特定IP或安全组访问终端节点的私有IP。请参见加入和管理安全组。
该方式适用于不信任的通信关系,如图VPC1和VPC2可以分属两个不同的公司。
VPC隔离,通过CEN互联,使用VPC边界防火墙进行网络访问控制
CEN是通过路由转发方式实现多VPC、跨地域/跨账号的Hub-spoke方式网络互联,如下图。具体配置步骤,请参见场景化组网实现多VPC互联。
CEN允许配置路由策略,适用于对VPC间网络做大颗粒访问控制。如上图,可以配置允许VPC1与VPC3通信,VPC1与VPC2通信,不允许VPC2与VPC3通信。
对于业务层面的网络访问控制,建议配置基础版转发路由器的VPC边界防火墙。以CEN基础版转发路由器为例(如下图),VPC边界防火墙会自动引流VPC边界流量,基于DPI流量分析、IPS入侵防御规则、威胁情报、虚拟补丁、访问控制策略等,对VPC互访的流量进行过滤,判断流量是否满足放行条件,有效拦截非法的访问流量,保障私网资产之间的流量安全。