# 使用独享WAF和7层ELB以防护任意非标端口
#### 应用场景
如果您需要防护[WAF支持的端口](https://support.huaweicloud.com/usermanual-waf/waf_01_1249.html)以外的非标端口，可参考本章节配置WAF的独享模式和7层ELB联动，可实现任意端口业务的防护。
#### 方案架构
假设需要将"www.example.com:9876"配置到WAF进行防护，但WAF不支持"9876"非标端口的防护，则可以按以下的方法进行配置，实现"9876"非标端口的防护。
![](https://support.huaweicloud.com/bestpractice-waf/zh-cn_image_0000001924130406.png "点击放大")
#### 方案优势
可以防护WAF不支持的业务端口。
#### 资源与成本规划
表1资源和成本规划 
| 资源        | 资源说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 每月费用                                                                                  |
|:---|:---|:---|
| 弹性负载均衡    | - 计费模式：包年/包月  - 实例类型：独享型  - 规格：应用型（HTTP/HTTPS）；小型II  - 公网带宽：按带宽计费  - 带宽：10Mbit/s                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 具体的计费方式及标准请参考[计费说明](https://support.huaweicloud.com/price-elb/elb_billing_0001.html)。 |
| Web应用防火墙 | 独享模式： - 计费模式：按需计费  - 域名数量：2,000个  - WAF实例规格选择WI-500，参考性能： - HTTP业务：建议5,000QPS  - HTTPS业务：建议 4,000QPS    - Websocket业务：支持最大并发连接5,000  - 最大回源长连接：60,000    - WAF实例规格选择WI-100，参考性能： - HTTP业务：建议1,000QPS  - HTTPS业务：建议800QPS    - Websocket业务：支持最大并发连接1,000  - 最大回源长连接：60,000     | -                                                                                    |
   
#### 前提条件
- 已购买七层独享型负载均衡。有关ELB类型的详细介绍，请参见[共享型弹性负载均衡与独享型负载均衡的功能区别](https://support.huaweicloud.com/productdesc-elb/elb_pro_0004.html)。
  ![](https://support.huaweicloud.com/bestpractice-waf/public_sys-resources/note_3.0-zh-cn.png)
  2023年4月之前的独享引擎版本，不支持与独享ELB网络型配合使用。因此，如果您使用了独享ELB网络型（TCP/UDP）负载均衡，在目标独享引擎实例列表中的"版本"列查看WAF实例版本，确认已升级到最新版本（2023年4月及之后的版本）。
  
- 已购买[WAF独享模式实例](https://support.huaweicloud.com/usermanual-waf/waf_01_0248.html)。
- 在该独享引擎实例所在安全组中已放开了相关端口。
  安全组建议配置以下访问规则：
  - 入方向规则 根据业务需求添加指定端口入方向规则，放通指定端口入方向网络流量。例如，需要放通"80"端口时，您可以添加"策略"为"允许"的"TCP"、"80"协议端口规则。
    
  
  - 出方向规则 默认。放通全部出方向网络流量。
    
   
  有关添加安全组规则的详细操作，请参见[添加安全组规则](https://support.huaweicloud.com/usermanual-vpc/zh-cn_topic_0030969470.html)。
  
 
#### 操作步骤
1. [登录Web应用防火墙控制台](https://console.huaweicloud.com/waf/?locale=zh-cn)。
2. 在左侧导航栏，单击"接入管理"。
3. 在"接入管理"页面，选择"独享模式"页签后，单击"添加防护网站"。 
   若仅开通一种接入模式，则直接单击"添加防护网站"。
   
   
4. 将网站"www.example.com"接入WAF，选择任意的非标准端口，如"86"端口，"源站端口"配置为"9876"，"IP标记"根据业务需要配置，其他参数的配置参见[添加防护网站（独享模式）](https://support.huaweicloud.com/usermanual-waf/waf_01_0250.html)。
   
   图1添加防护域名   
   ![](https://support.huaweicloud.com/bestpractice-waf/zh-cn_image_0000002047207996.png "点击放大")
   完成以上配置，您可以在域名列表，查看域名接入信息。此时，"接入模式"为"独享模式"，"接入状态"为"未接入"。
   
   
5. 为ELB配置监听器和后端服务器组。
   
   1. 进入[弹性负载均衡列表页面](https://console.huaweicloud.com/vpc/?locale=zh-cn#/elb/list)。
   
   2. 在负载均衡器所在行的"名称"列，单击目标负载均衡器名称，进入ELB详情页面。
   
   3. 选择"监听器"页签后，单击"添加监听器"，配置监听器信息，"前端端口"配置为您想防护的端口，如此处配置为"9876"。
      图2配置监听器信息   
      ![](https://support.huaweicloud.com/bestpractice-waf/zh-cn_image_0000001369483086.png "点击放大") 
   
   4. 单击"下一步：配置后端分配策略"，配置后端服务器组。
      ![](https://support.huaweicloud.com/bestpractice-waf/public_sys-resources/caution_3.0-zh-cn.png)
      - "分配策略类型"选择"加权轮询算法"时，请关闭"会话保持"，如果开启会话保持，相同的请求会转发到相同的WAF独享引擎实例上，当WAF独享引擎实例出现故障时，再次到达该引擎的请求将会出错。
      
      - 有关ELB流量分配策略的详细介绍，请参见[流量分配策略](https://support.huaweicloud.com/usermanual-elb/elb_ug_jt_0003.html)。
       
      图3配置后端服务器组   
      ![](https://support.huaweicloud.com/bestpractice-waf/zh-cn_image_0000001423609253.png "点击放大") 
   
   5. 单击"下一步：配置后端服务器"后，单击"下一步：确认配置"。最终确认监听器、后端分配策略、后端服务器信息后，单击"提交"。
   
   
   完成以上配置后，您可以在监听器页签，查看已添加的听器和后端服务器组。
   
   
6. 将WAF实例添加到ELB。 
   1. [登录Web应用防火墙控制台](https://console.huaweicloud.com/waf/#/waf/dashboard/security)。
   
   2. 在左侧导航栏，选择"资产管理 \> WAF独享引擎"。
   
   3. 在目标实例所在行的"操作"列，单击"更多 \> 添加到ELB"。
   
   4. 在"添加到ELB"页面中，选择[5]中配置的"ELB（负载均衡器）"、"ELB监听器"和"后端服务器组"。
      图4添加到ELB   
      ![](https://support.huaweicloud.com/bestpractice-waf/zh-cn_image_0000001369683888.png "点击放大") 
   
   5. 单击"确定"，为WAF实例配置业务端口，"业务端口"需要配置为WAF独享引擎实例实际监听的业务端口，即[4]中配置的86端口。
      图5配置业务端口   
      ![](https://support.huaweicloud.com/bestpractice-waf/zh-cn_image_0000001837715489.png "点击放大") 
   
   6. 单击"确定"，配置完成。
   
   
   
   
7. [为弹性负载均衡绑定弹性公网IP](https://support.huaweicloud.com/usermanual-waf/waf_01_0250.html#section4)。
8. [放行独享引擎回源IP](https://support.huaweicloud.com/usermanual-waf/waf_01_0250.html#section5)。
 
#### 操作结果验证
- 完成以上配置后，您可以参考如下方法，验证WAF转发和ELB运行是否正常。
  1. [验证独享WAF是否正常工作](https://support.huaweicloud.com/usermanual-waf/waf_01_0250.html#section7)
  
  2. [验证独享WAF和ELB是否都正常工作](https://support.huaweicloud.com/usermanual-waf/waf_01_0250.html#section7)
   
- 您可以在浏览器中输入防护域名，测试网站域名是否能正常访问；也可以手动模拟简单的Web攻击命令，验证WAF防护是否生效。
 
