# 开启NAT网关流量防护
#### 操作场景
当VPC内的资源（如ECS）通过NAT网关访问互联网时，可能存在未授权访问、数据泄露或恶意攻击等安全风险。为应对这些风险，云防火墙提供业务VPC与NAT网关之间流量的防护，能够有效阻断非法外联和恶意流量，并支持基于私网IP实现细粒度访问控制，拦截未授权的流量访问。
本章节介绍如何通过VPC边界防火墙对NAT网关流量开启防护。
如果业务流量通过EIP连接公网请参见[开启互联网边界流量防护](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0031.html)。
#### 什么是NAT网关流量
NAT网关流量是NAT网关和互联网之间的通信流量，分为两种防护场景：
图1NAT网关流量防护   
![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000002623470371.png "点击放大")
- 通过EIP防护NAT网关 通过NAT网关绑定的EIP连接公网，云防火墙会防护所有经过NAT网关的流量，适用于防护粒度较粗的场景。
  无论是云上业务访问互联网，流量从VPC经过NAT网关进行地址转换，通过EIP访问互联网，还是VPC对外提供服务时，来自互联网的流量由NAT网关分发给云上服务端场景，如果已经在云防火墙上开启对NAT网关绑定的EIP的防护，并针对EIP配置了防护策略，那么，云防火墙会对经过EIP的所有流量匹配访问控制策略以及安全检查。
  针对EIP防护的方式由于会对经过NAT网关的所有流量进行统一管控，因此，仅适用于整体管控粒度较粗的场景。
  
- 通过VPC防护NAT网关 如果需要针对不同类型的业务实现精细化控制，可以通过创建VPC边界防火墙，并借助企业路由器，将云防火墙接入NAT网关所在的VPC与业务VPC之间，可以对私网IP的流量进行管控，适用于业务场景相对复杂且对安全审计需求较高的用户。
  私网流量从业务VPC经过企业路由器转发到云防火墙，云防火墙根据防护策略进行筛选，将安全的流量放行至ER，再转发到NAT网关。
  私网IP防护的方式通过为不同业务的资产分别配置NAT防护策略，实现暴露面最小化，降低对外暴露的风险，且可以记录私网IP的流量便于溯源与审计，因此，适用于业务场景相对复杂且对安全审计需求较高的用户。
  此过程中，云防火墙依赖ER的核心原因如下：
  - 解耦性：ER作为独立路由中枢，云防火墙以逻辑连接形式接入，不直接修改VPC内部路由表，降低对现有网络拓扑的侵入性。
  
  - 扩展性：单ER可挂载多VPC、多防火墙实例，适合企业级复杂拓扑。
  
  - 可靠性：ER支持跨可用区高可用，流量路径天然冗余。
  
  
  这种设计使云防火墙在ER中表现为特殊的连接类型，通过关联路由表将VPC流量牵引至防火墙检测，再通过传播路由表将放行后的流量分发至NAT网关，从而在私网侧实现基于原始私网IP的细粒度管控，尤其适合多VPC汇聚、混合云互联等企业场景。
  
 
#### NAT网关流量防护介绍视频
<video controls="controls" preload="none" id="object4229164361810" class="idp-external-video" src="https://res-video.hc-cdn.com/cloudbu-site/china/zh-cn/support/cfw-video/1733400717749659277.mp4" title="互联网边界流量防护介绍视频" poster="https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000002270514706.jpg" height="300.0000" width="600.0000"></video>
#### 组网图
SNAT和DNAT的防护组网图如下：
图2组网图   
![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000002623469087.png "点击放大")
- SNAT SNAT防护提供主动外联场景的细粒度访问控制，适用于NAT网关所在VPC与业务VPC隔离，并通过多个VPC/子网使用公网IP对外发起访问的场景。
  当弹性云服务器（ECS）发起外网访问时，流量经过企业路由器（ER）转发到防火墙，防火墙根据配置的SNAT防护规则筛选流量（阻断/放行），将安全的流量放行至ER，转发到NAT网关，通过SNAT规则转发到互联网。
  
- DNAT DNAT防护提供外网访问内部资源场景的细粒度访问控制，适用于NAT网关所在VPC与业务VPC隔离，多个VPC/子网使用NAT对外提供访问的场景。
  当互联网发起对内部资源的访问时，流量经过NAT网关的DNAT规则转发到企业路由器（ER），ER将流量转发至防火墙，防火墙根据配置的DNAT防护规则筛选流量（阻断/放行），将安全的流量放行至ER，转发到业务VPC。
  
 
#### 对业务的影响
开启VPC防护前，请确认是否有阻断所有流量的防护规则或黑名单：
- 开启VPC防护前，如果有阻断所有流量的防护规则或黑名单，则会在开启时对该VPC生效，可能导致业务中断。此时，建议开启防护前排查是否存在长连接且不支持会话重建的业务。如果存在，请先进行处理。 编辑防护规则详细操作请参见[管理防护规则](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0061.html)。编辑黑名单详细操作请参见[管理黑/白名单](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0035.html)。
  
- 开启或关闭VPC防护前，如果不存在阻断所有流量的防护规则或黑名单，则不会造成业务中断，保证流量平滑切换。
 
#### 约束与限制
- 仅"专业版"支持NAT网关流量防护。
- 依赖企业路由器（Enterprise Router，ER）服务引流。 同时，在配置路由时，不建议在VPC路由表中将ER的路由配置为默认路由网段0.0.0.0/0。如果VPC内的ECS绑定了EIP，会在ECS内增加默认网段的策略路由，并且优先级高于ER路由，此时会导致流量转发至EIP，无法抵达ER。所以，当VPC和ER组网存在以下情况时，不建议您在VPC路由表中将下一跳为ER的路由配置为默认路由0.0.0.0/0，否则会导致部分业务流量无法转发至ER。
  - VPC内的ECS绑定了EIP；
  
  - VPC内部署了ELB、NAT网关、VPCEP、DCS服务。
  
  
  以上场景配置路由的具体解决方法可参见[如何解决VPC路由表中的0.0.0.0/0路由无法转发至ER的问题](https://support.huaweicloud.com/er_faq/er_01_0121.html)。
  
- 云防火墙当前默认支持标准私网网段，如果您需要配置其它的网段，请您[修改私网网段](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0293.html)或添加私网网段，否则云防火墙可能无法正常转发您VPC间的流量。
- 如果需要实现DNAT网关向CFW集群东西向引流并配置DNAT规则，需提工单联系服务运维人员支撑防火墙升级，避免因旧版本不支持DNAT可能引起的流量受损风险。
 
#### 开启NAT网关流量防护
需完成创建防火墙，具体配置请参见[创建VPC边界防火墙](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0131.html)。
**步骤一：将VPC1和VPC-NAT接入企业路由器中**
1. 添加VPC连接。
   操作步骤请参见[企业路由器中添加VPC连接](https://support.huaweicloud.com/usermanual-er/er_01_0070.html)。
   ![](https://support.huaweicloud.com/usermanual-cfw/public_sys-resources/note_3.0-zh-cn.png)
   连接需要添加两条，"连接资源"分别选择VPC1和VPC-NAT。
   
2. 创建两个路由表。
   1. 在左侧导航栏中，单击左上方的![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000001932695044.png)，选择"网络 \> 企业路由器"，单击"管理路由表"，进入"路由表"页面。
   
   2. 创建两个路由表，作为**关联路由表** 和**传播路由表** 分别用于连接需防护的VPC和连接防火墙。
      在企业路由器详情页面中，单击"路由表"页签，进入路由表设置页面，单击"创建路由表"，并在弹出的创建路由表框中配置参数信息。
      表1创建路由表参数说明 
      | 参数名称       | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 取值样例                                                                      |
      |:---|:---|:---|
      | 名称          | 输入路由表的名称。 命名规则如下： - 长度范围为1\~64位。  - 名称由中文、英文字母、数字、下划线（_）、中划线（-）、点（.）组成。                                                                                                                                                       | er-rtb-01                                                                |
      | AS_Path选路策略 | 可选参数。 - 不配置：表示路由在形成负载分担时，比较AS_Path属性，优选AS_Path长度较短的。AS_Path属性按矢量顺序记录了BGP路由从本地到目的地址所要经过的所有AS编号，AS_Path记录的AS编号越少，证明长度越短。  - 忽略相同长度AS_Path：设置该参数后，路由在形成负载分担时不比较相同长度的AS_Path属性。AS_Path可防止自治系统AS之间发生BGP环路，开启"忽略相同长度AS_Path"选项，可能导致BGP环路。   | 不配置                                                                      |
      | 标签           | 可选参数。 您可以在创建路由表的时候为路由表绑定标签，标签用于标识云资源，可通过标签实现对云资源的分类和搜索。 关于标签更详细的说明，请参见[标签概述](https://support.huaweicloud.com/usermanual-er/er_01_0049.html)。                                                                                                                                                                                                                                                                 | "标签键"：test "标签值"：01 |
      | 描述           | 可选参数。 您可以根据需要在文本框中输入对该路由表的描述信息。                                                                                                                                                                                                                                                                                                                                                                                                                                     | -                                                                        |
         
      
    
3. 设置关联路由表。
   1. 设置关联功能，添加VPC1和VPC-NAT的连接：在路由表设置页面，选择关联路由表，单击"关联"页签，单击"创建关联"，参数详情见[表2]。
      **需要增加两条关联**，"连接"分别选择VPC1和VPC-NAT的连接。
       表2创建关联参数说明 
      | 参数名称 | 参数说明              |
      |:---|:---|
      | 连接类型 | 选择连接类型为：虚拟私有云（VPC）。 |
      | 连接    | 在连接下拉列表中，选择VPC连接。  |
         
      
   
   2. 添加静态路由，指向防火墙：单击"路由"页签，单击"创建路由"，参数详情见[表3]。
      图3创建路由   
      ![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000001663979721.png "点击放大")
       表3创建路由参数说明 
      | 参数名称 | 参数说明                                                                                                                                                                                                                                                                                       |
      |:---|:---|
      | 目的地址  | 设置目的地址。 - 0.0.0.0/0：VPC的所有流量（IPv4）都会经过云防火墙防护。  - 网段：该网段的流量会经过云防火墙防护。   |
      | 黑洞路由 | 建议您保持关闭状态；开启后如果路由匹配上黑洞路由的目的地址，则该路由的报文会被丢弃。                                                                                                                                                                                                                                               |
      | 连接类型  | 选择连接类型为：云防火墙（CFW）。                                                                                                                                                                                                                                                                          |
      | 下一跳  | 在下拉列表中，选择自动生成的防火墙连接（cfw-er-auto-attach）。                                                                                                                                                                                                                                                  |
      | 描述   | （可选）路由的描述信息。                                                                                                                                                                                                                                                                             |
         
      
    
4. 设置传播路由表。
   1. 设置关联功能，添加防火墙的关联：在路由表设置页面，选择传播路由表，单击"关联"页签，单击"创建关联"，参数详情见[表 创建关联参数说明]。
      图4创建关联   
      ![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000001664060933.png "点击放大")
       表4创建关联参数说明 
      | 参数名称  | 参数说明                                          |
      |:---|:---|
      | 连接类型 | 选择连接类型为：云防火墙（CFW）。                            |
      | 连接   | 在下拉列表中，选择自动生成的防火墙连接（cfw-er-auto-attach）。 |
         
      
   
   2. 设置传播功能，添加VPC1的传播：在路由表设置页面，选择传播路由表，单击"传播"页签，单击"创建传播"，参数详情见[表5]。
      图5创建传播   
      ![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000001338627221.png "点击放大")
       表5创建传播参数说明 
      | 参数名称 | 参数说明                 |
      |:---|:---|
      | 连接类型  | 选择连接类型为：虚拟私有云（VPC）。  |
      | 连接     | 在传播下拉列表中，选择VPC1的连接。 |
         
      
   
   3. 添加静态路由，指向VPC-NAT：单击"路由"页签，单击"创建路由"，参数详情见[表6]。
       表6创建路由参数说明 
      | 参数名称 | 参数说明                                       |
      |:---|:---|
      | 目的地址  | 设置目的地址，设置为：0.0.0.0/0。                     |
      | 黑洞路由  | 建议保持关闭状态；开启后如果路由匹配上黑洞路由的目的地址，则该路由的报文会被丢弃。 |
      | 连接类型   | 选择连接类型为：虚拟私有云（VPC）。                         |
      | 下一跳  | 在下拉列表中，选择VPC-NAT的连接。                         |
         
      
    
**步骤二：配置NAT网关**
1. 配置SNAT规则。
   1. 返回至企业路由器界面，在左侧导航栏中，选择"网络 \> NAT网关"，进入"公网NAT网关"页面。
   
   2. 单击公网NAT网关的名称，进入"基本信息"页面，切换至"SNAT规则"页签。
   
   3. 单击"添加SNAT规则"，参数详情如[表7]所示。
       表7添加SNAT规则 
      | 参数名称    | 参数说明                                                                                                                                                                                                                                            |
      |:---|:---|
      | 使用场景      | SNAT规则使用的场景，选择"虚拟私有云"。                                                                                                                                                                                                                           |
      | 网段        | 选择"自定义"子网，使云服务器通过SNAT方式访问公网 - 自定义：自定义一个网段或者填写某个VPC的地址。                                                                                            |
      | 公网IP类型 | 选择"弹性公网IP"，用来提供互联网访问的公网IP。 这里只能选择没有被绑定的EIP，或者被绑定在当前公网NAT网关中非"所有端口"类型DNAT规则上的EIP，或者被绑定到当前公网NAT网关中SNAT规则上的EIP。 可选择多条EIP添加在SNAT规则中。一条SNAT规则最多添加20个EIP。SNAT规则使用多个EIP时，业务运行时会随机选取其中的一个。 |
      | 监控     | 为SNAT连接数设置告警。 可通过设置告警及时了解SNAT连接数运行状况，从而起到预警作用。                                                                                                                                                                        |
      | 描述       | SNAT规则信息描述。最大支持255个字符。                                                                                                                                                                                                                           |
         
      
   
   4. 单击"确定"。
    
2. 配置VPC-NAT的路由表。
   1. 在左侧导航栏中，选择"网络 \> 虚拟私有云 \> 路由表"，进入"路由表"页面。
   
   2. 在路由表页面中，单击NAT网关对应VPC的路由表名称，进入路由表"基本信息"页面。
   
   3. 单击"添加路由"，参数详情见[表8]。
       表8添加路由参数说明 
      | 参数     | 说明                                                                              |
      |:---|:---|
      | 目的地址类型 | 选择"IP地址"。                                                                      |
      | 目的地址   | 目的地址网段，填写VPC1的IP地址。 填写的网段不能与已有路由和VPC下子网网段冲突。   |
      | 下一跳类型  | 在下拉列表中，选择类型"企业路由器"。                                                           |
      | 下一跳     | 选择下一跳资源。 下拉列表中将展示您创建的企业路由器名称。         |
      | 描述     | 路由的描述信息，非必填项。 描述信息内容不能超过255个字符，且不能包含"\<"和"\>"。 |
         
      
   
   4. 单击"确定"。
    
**步骤三：配置VPC1路由表**
1. 返回"路由表"页面，并在路由表页面中单击VPC1的路由表名称，进入路由表"基本信息"页面。
2. 单击"添加路由"，参数详情见[表9]。
    表9添加路由参数说明 
   | 参数     | 说明                                                                           |
   |:---|:---|
   | 目的地址类型 | 选择"IP地址"。                                                                       |
   | 目的地址   | 目的地址网段，设置为：0.0.0.0/0。                                                         |
   | 下一跳类型  | 在下拉列表中，选择类型"企业路由器"。                                                           |
   | 下一跳   | 选择下一跳资源。 下拉列表中将展示您创建的企业路由器名称。                    |
   | 描述   | 路由的描述信息，非必填项。 描述信息内容不能超过255个字符，且不能包含"\<"和"\>"。 |
      
   
3. 单击"确定"。
**步骤四：开启VPC边界防火墙**
1. 返回云防火墙的控制台页面。
2. 在左侧导航栏中，选择"资产管理 \> VPC边界防火墙管理"，进入"VPC边界防火墙管理"页面。
3. 单击"防火墙状态"侧的![](https://support.huaweicloud.com/usermanual-cfw/zh-cn_image_0000002513116284.png "点击放大")，并在弹出的确认框中单击"确定"，开启VPC边界防火墙。
 
#### 后续操作
开启NAT网关流量防护后，您的业务流量将经过云防火墙，默认情况下，所有流量都会被放行。您可以根据需要查看流量趋势或为配置访问控制策略、攻击防御策略等，以便更好地管控流量。
- **查看流量趋势及流量日志** ：
  - 查看经过云防火墙的流量趋势和统计结果，请参见[流量中心](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0011.html)。
  
  - 查看经过云防火墙的所有流量日志，请参见[查看流量日志](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0139.html#cfw_01_0139__section1072743131014)。
   
- **配置防护规则** ，进行精细化流量管控：
  开启防护后，流量默认放行，云防火墙根据您设置的策略实施拦截：
  - 通过防护规则放行/拦截流量，详细操作请参见[通过防护规则拦截/放行VPC边界流量](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0297.html)。
  
  - 通过黑白名单放行/拦截流量，详细操作请参见[通过黑/白名单拦截/放行VPC边界流量](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0322.html)。
   
- **防御网络攻击** ：通过配置入侵防御来进行处理，详细操作请参见[配置IPS基础防御](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0032.html)。
 
#### 相关操作
关闭NAT网关流量防护：如果您的业务后续不再需要NAT网关流量防护，可以关闭防护，具体操作请参见[关闭VPC边界防火墙防护](https://support.huaweicloud.com/usermanual-cfw/cfw_01_0264.html)。
