
# 使用CFW和ER防护VPN流量
#### 应用场景
在企业数字化转型中，许多公司使用虚拟专用网络（Virtual Private Network，以下简称VPN）在远端用户和虚拟私有云（Virtual Private Cloud，以下简称VPC）之间建立安全加密的公网通信隧道。然而，尽管VPN提供了加密和隧道传输，但其流量仍然面临安全威胁，例如VPN滥用、风险流量扩散以及合规审计的挑战。如何确保VPN流量的安全性并满足合规要求？
为此，云防火墙提供了一套全面的解决方案，针对VPN流量云防火墙可以提供如下能力：
1. 防止VPN滥用：通过精细的访问控制策略，云防火墙能够保护云上云下的敏感区域，严格限制对高敏感业务的访问，并且防止用户访问其业务/权限范围外的内网资源或访问与业务无关的互联网资源。
2. 拦截风险流量：若VPN用户的设备被入侵，则安全风险可能通过VPN扩散并入侵资产。云防火墙具备强大的入侵防御能力，能够有效检测并拦截通过VPN流量传播的攻击。当检测到异常流量或已知的恶意活动时，云防火墙可以迅速采取行动，防止安全风险通过VPN扩散，保护企业资产免受侵害。
3. 满足合规审计要求：云防火墙可对VPN流量进行详细的日志记录，包括访问源、目的、应用类型等信息，满足合规审计的要求。
 
#### 方案介绍
创建VPN时，需要绑定EIP以用于VPN网关和对端网关进行网络连接。此时，在CFW的防护列表中可以看到VPN网关的EIP信息（CFW自动同步登录账号所在region的EIP信息）。但需要注意的是，若在云防火墙上针对VPN的EIP开启防护，云防火墙无法解析被隧道封装的内部流量。具体说明如下：
![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000002415522372.png "点击放大")
因此，针对VPN流量进行访问控制或是安全检测的场景，需要使用ER+CFW的VPC边界防火墙，具体组网架构如下：
![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000002415682324.png "点击放大")
1. 将VPN网关关联到ER上的具体操作，请参考：[在企业路由器中添加VPN连接](https://support.huaweicloud.com/usermanual-er/er_01_0171.html)。
2. 将CFW关联到ER上的具体操作，请参考：[配置企业路由器并将流量引至云防火墙](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0269.html)。
3. 路由配置完成后，即可在云防火墙上下发对VPN流量的访问控制策略，对特定流量进行安全隔离，实现多方位防护。
#### 前提条件
- 配置中需要使用企业路由器（Enterprise Router, ER），关于企业路由器请参见[什么是企业路由器？](https://support.huaweicloud.com/productdesc-er/er_01_0002.html)。
- 需完成创建防火墙，具体配置请参见[创建防火墙](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0131.html)。
 
#### 约束限制
仅"专业版"云防火墙支持VPC边界防火墙。
#### 使用CFW和ER防护VPN流量示例
如下步骤以如下信息为例进行介绍：
某企业在云上开通了企业版VPN网关。用户的数据中心中待互通的子网为172.16.0.0/16，需要与云上地址段为192.168.0.0/24的VPC互通。该企业使用了ER+CFW来对VPN流量进行访问控制。
![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000002483348625.png "点击放大")
#### 步骤一：添加VPC连接
创建VPC连接用于将虚拟专用网络的VPN网关接入企业路由器中。具体步骤请参见[企业路由器中添加VPC连接](https://support.huaweicloud.com/usermanual-er/er_01_0070.html)。
#### 步骤二：创建VPC边界防火墙
具体操作请参见[创建防火墙](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0131.html)。
防火墙创建后自动生成一条防火墙连接（名称：cfw-er-auto-attach，连接类型：云防火墙（CFW））。
#### 步骤三：配置企业路由器并将流量引至云防火墙
1. 创建并配置两个路由表，作为**关联路由表** 和**传播路由表** 分别用于连接需防护的VPC和连接防火墙。
   
   1. 进入企业路由页面。
      1. （可选）切换防火墙实例：如果有多个防火墙实例，可以在页面左上角的下拉框中进行切换。
      
      2. 在左侧导航栏中，选择"资产管理 \> VPC边界防火墙管理"，进入"VPC边界防火墙管理"页面。
      
      3. 在VPC边界防火墙管理页面中，单击"防火墙状态"侧的"编辑防护VPC"，进入企业路由器页面。
       
   
   2. 创建并配置**关联路由表** 。
      1. 创建路由表。
         1. 单击"路由表"页签，进入路由表设置页面，单击"创建路由表"。
         
         2. 在弹出的创建路由表页面中，输入关联路由表名称（此处示例名称设置为：路由表1），并单击"确定"。
          
      
      2. 创建关联。
         1. 在路由表中选择关联路由表，单击"关联"页签，进入关联页面后，单击"创建关联"。
         
         2. 配置创建关联的参数信息。
            图1创建关联   
            ![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000001338919833.png "点击放大")
            表1创建关联参数说明 
            | 参数名称 | 参数说明                  |
            |:---|:---|
            | 连接类型 | 选择连接类型：虚拟私有云（VPC）。    |
            | 连接   | 在连接下拉列表中，选择需防护的VPC连接。 |
               
            
         
         3. 单击"确定"。
          
      
      3. 设置路由功能。
         1. 单击"路由"页签，进入路由页面后，单击"创建路由"。
         
         2. 配置创建路由的参数信息。
            图2创建路由   
            ![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000001663979721.png "点击放大")
            表2创建路由参数说明 
            | 参数名称 | 参数说明                                                                                                             |
            |:---|:---|
            | 目的地址 | 设置目的地址。 此处示例填写为：0.0.0.0/0，表示VPC的所有流量（IPv4）都会经过云防火墙防护。 |
            | 黑洞路由 | 建议您保持关闭状态。                                                                                                       |
            | 连接类型 | 选择连接类型：云防火墙（CFW）。                                                                                                |
            | 下一跳  | 在下拉列表中，选择自动生成的防火墙连接（cfw-er-auto-attach）。                                                                         |
            | 描述   | （可选）路由的描述信息。                                                                                                     |
               
            
         
         3. 单击"确定"。
          
       
   
   3. 创建并配置**传播路由表** 。
      1. 创建路由表。
         1. 单击"路由表"页签，进入路由表设置页面，单击"创建路由表"。
         
         2. 在弹出的创建路由表页面中，输入关联路由表名称（此处示例名称设置为：路由表2），并单击"确定"。
          
      
      2. 创建关联。
         1. 在路由表中选择关联路由表，单击"关联"页签，进入关联页面后单击"创建关联"。
         
         2. 配置创建关联的参数信息。
            图3创建关联   
            ![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000001664060933.png "点击放大")
            表3创建关联参数说明 
            | 参数名称 | 参数说明                                     |
            |:---|:---|
            | 连接类型 | 选择连接类型为：云防火墙（CFW）。                       |
            | 连接   | 在下拉列表中，选择自动生成的防火墙连接（cfw-er-auto-attach）。 |
               
            
         
         3. 单击"确定"。
          
      
      3. 设置传播功能。
         1. 单击"传播"页签，单击"创建传播"，并在弹出的创建传播页面中，设置传播参数信息。
            图4创建传播   
            ![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000001338627221.png "点击放大")
            表4创建传播参数说明 
            | 参数名称 | 参数说明                  |
            |:---|:---|
            | 连接类型 | 选择连接类型：虚拟私有云（VPC）。    |
            | 连接   | 在连接下拉列表中，选择需防护的VPC连接。 |
               
            
         
         2. 单击"确定"。
          
       
   
   
   
   
2. 修改VPC的路由表。 
   1. 在左侧导航栏中，选择"网络 \> 虚拟私有云 \> 路由表"，进入路由表页面。
   
   2. 在"名称/ID"列，单击对应VPC的路由表名称，进入路由表基本信息页面。
   
   3. 单击"添加路由"，并配置路由信息。
      表5添加路由参数说明 
      | 参数     | 说明                                                                                                        |
      |:---|:---|
      | 目的地址类型 | 选择"IP地址"。                                                                                                 |
      | 目的地址   | 填写流量到达的网段。 此处请填写示例中的IP地址：172.16.0.0/16（数据中心）。  |
      | 下一跳类型  | 在下拉列表中，选择类型"企业路由器"。                                                                                       |
      | 下一跳    | 选择下一跳资源。 下拉列表中将展示您创建的企业路由器名称。                  |
      | 描述     | （可选）路由的描述信息。 描述信息内容不能超过255个字符，且不能包含"\<"和"\>"。 |
         
      
   
   4. 单击"确定"。
   
   
   
   
 
#### 步骤四：开启VPC边界防火墙并配置防护规则
配置完成后，防火墙默认为"未开启"状态，此时流量只经过企业路由器，未转发到防火墙，您需要手动开启VPC边界防火墙功能并根据防护需要配置防护规则。
此步骤中的防护规则以对地址为192.168.0.19的敏感资产，设置禁止SSH访问的策略为例进行介绍。
1. 开启VPC边界防火墙。 
   1. [登录云防火墙控制台](https://console.huaweicloud.com/cfw/?locale=zh-cn)。
   
   2. 单击管理控制台左上角的![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000002351970641.png "点击放大")，选择区域。
   
   3. （可选）切换防火墙实例：如果有多个防火墙实例，可以在页面左上角的下拉框中进行切换。
   
   4. 在左侧导航栏中，选择"资产管理 \> VPC边界防火墙管理"，进入"VPC边界防火墙管理"页面。
   
   5. 在"防火墙状态"侧，单击"开启防护"。
   
   6. 单击"确认"，完成开启VPC边界防火墙。
   
   
   
   
2. 验证流量是否经过云防火墙。 
   1. 生成流量，请参见[验证网络互通情况](https://support.huaweicloud.com/bestpractice-er/er_03_0069.html)。
   
   2. 查看日志：在左侧导航栏中，选择"运维分析 \> 日志查询"，选择"流量日志 \> VPC边界防火墙"页签。
      - 有日志记录：云防火墙已成功防护VPC间流量。
      
      - 无日志记录，排查企业路由器配置，请参见[配置企业路由器并将流量引至云防火墙](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0269.html)。
       
   
   
   
   
3. 配置防护规则。 
   此步骤中的防护规则以对地址为192.168.0.19的敏感资产，设置禁止SSH访问的策略为例进行介绍。
   1. 在云防火墙左侧导航栏中，选择"防护策略 \> 访问控制 \> VPC边界防护规则"，进入"VPC边界防护规则"页面。
   
   2. 在"防护规则"页签中，单击"添加"，在弹出的添加防护规则页面中，填写防护信息。
      表6添加防护规则 
      | 参数名称   | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 取值示例                                                                                                                          |
      |:---|:---|:---|
      | 名称     | 自定义安全策略规则的名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | --                                                                                                                            |
      | 源      | 设置会话发起方。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | IP地址 172.16.0.0/16（数据中心）                                                                        |
      | 目的     | 设置会话接收方。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | IP地址 192.168.0.19（敏感资产）                                                                          |
      | 服务     | 设置传输层协议类型，指定流量的协议类型或端口号。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 服务 协议：TCP 源端口：1-65535 目的端口：1-65535 |
      | 应用     | 设置针对应用层协议的防护策略。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 应用，SSH                                                                                                                        |
      | 防护动作   | 设置流量经过防火墙时的处理动作。 - 放行：防火墙允许此流量转发。  - 阻断：防火墙禁止此流量转发。                                                                                                                                                                                                  | 阻断                                                                                                                            |
      | 启用状态   | 设置该防护规则是否立即启用。 - ![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000002507089036.png "点击放大")：表示立即启用，配置完成后规则立即生效。  - ![](https://support.huaweicloud.com/bestpractice-cfw/zh-cn_image_0000002507089122.png "点击放大")：表示立即关闭，规则不生效。   | 启用                                                                                                                            |
      | 策略优先级  | 设置该策略的优先级。如果配置了多条安全策略规则，则安全策略将按照优先级顺序进行匹配。一旦流量匹配到某个安全策略，就不会再匹配下一个策略。因此，安全策略的优先级非常重要，应先配置条件具体的策略，再配置条件宽泛的策略。 - 置顶：表示将该策略的优先级设置为最高。  - 移动至选中规则后：表示将该策略优先级设置到某一规则后。                                                                                      | 置顶                                                                                                                            |
      | 时间计划管理 | （可选）单击"时间计划管理"设置规则的生效时间段。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | --                                                                                                                            |
      | 配置长连接  | 当前防护规则仅配置一个"服务"且"协议"选择"TCP"或"UDP"时，可配置业务会话老化时间（以秒为单位）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | --                                                                                                                            |
      | 长连接时长  | "配置长连接"选择"是"时，需要设置长连接时长，输入"时"、"分"、"秒"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | --                                                                                                                            |
      | 标签     | （可选）用于标识规则，可通过标签实现对安全策略的分类和搜索。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | --                                                                                                                            |
      | 描述     | （可选）标识该规则的使用场景和用途，以便后续运维时快速区分不同规则的作用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | --                                                                                                                            |
         
      
   
   3. 单击"确认"。
   
   
   
   
 
#### 查看防护效果
1. 在数据中心（172.16.0.0/16）用一台地址为172.16.0.32的服务器试图SSH这台敏感资产（192.168.0.19）。
2. 查看云防火墙访问控制日志：
   1. 在云防火墙左侧导航栏中，选择"防护策略 \> 访问控制 \> VPC边界防护规则"，进入"VPC边界防护规则"页面。
   
   2. 在防护规则列表的"命中次数"列查看防护规则的命中情况。
   
   3. 在左侧导航树中，选择"运维分析 \> 日志查询""日志审计 \> 日志查询"，默认进入"攻击事件日志"页面。
   
   4. 查看云防火墙访问控制日志，有对应的阻断记录。
    
 
