
# 通过ELB全链路HTTPS实现访问加密
#### 应用场景
企业大型核心业务的敏感业务数据（如金融、政务等）对云上传输的安全性要求越来越高，因此在业务通过弹性负载均衡进行负载时，不仅要求客户端请求与负载均衡器之间的通信安全，也要求负载均衡器与后端业务服务器之间的通信安全。通过ELB提供的全链路HTTPS安全加密功能，可以实现业务流量从客户端到后端业务服务器之间的全链路HTTPS加密，同时兼顾性能和运维效率。
图1全链路HTTPS   
![](https://support.huaweicloud.com/bestpractice-elb/zh-cn_image_0000002289314869.png "点击放大")
#### 前提条件
- 已创建独享型ELB实例，且ELB已绑定EIP。具体操作，请参见[购买独享型负载均衡器](https://support.huaweicloud.com/usermanual-elb/elb_lb_000006.html)和[绑定IPv4公网IP](https://support.huaweicloud.com/usermanual-elb/elb_ug_fz_0015.html)。
- 已购买证书或者上传第三方证书到SSL证书服务并绑定域名。推荐您在华为云云证书与管理服务购买服务器证书，详情请参见[购买SSL证书](https://support.huaweicloud.com/usermanual-ccm/ccm_01_0074.html)。
  将您购买的证书同步到弹性负载均衡控制台，详情请参见[创建证书](https://support.huaweicloud.com/usermanual-elb/elb_ug_zs_0004.html)。
  
- 已购买ECS01实例，并且在ECS01中部署了应用服务。部署测试业务详情请参见[搭建后端服务](https://support.huaweicloud.com/qs-elb/zh-cn_topic_0052569751.html#section4)。
 
#### 操作流程
图2配置全链路HTTPS业务操作流程   
![](https://support.huaweicloud.com/bestpractice-elb/zh-cn_image_0000002254682558.png "点击放大")
#### 步骤一：创建HTTPS后端服务器组
1. 进入[后端服务器组列表页面](https://console.huaweicloud.com/vpc/?locale=zh-cn#/elb/elbPool/list)。
2. 在后端服务器列表页面，单击页面右上角"创建后端服务器组"按钮。
3. 配置后端分配策略，关键参数详情请参见[表1]，其余配置项保持默认值即可。
    表1配置后端分配策略参数说明 
   | 参数      | **示例**           | 说明                                                                                                                                                                                                                                             |
   |:---|:---|:---|
   | 名称      | **server_group** | 创建的后端服务器组的名称。                                                                                                                                                                                                                                  |
   | 负载均衡类型  | **独享型**          | 可使用该后端服务器组的负载均衡实例类型。                                                                                                                                                                                                                           |
   | 所属负载均衡器 | **关联已有**         | 使用该后端服务器组的负载均衡实例。 单击"关联已有"后，选择您已创建完成的负载均衡实例。                                                                                                                                                                      |
   | 后端协议    | **HTTPS**        | 后端云服务器自身提供的网络服务的协议。 本实践方案选择HTTPS协议。                                                                                                                                                                            |
   | 分配策略类型  | **加权轮询算法**       | 负载均衡采用的算法，本实践方案保持默认的加权轮询算法。 加权轮询算法：根据后端服务器的权重，按顺序依次将请求分发给不同的服务器，权重大的后端服务器被分配的概率高。 更多关于分配策略的信息，请参见[配置流量分配策略分发流量](https://support.huaweicloud.com/usermanual-elb/elb_ug_jt_0003.html)。 |
      
   
4. 单击"下一步"，添加后端服务器并配置健康检查。
5. 单击"添加云服务器"，选择您已创建好的ECS01实例，设置业务端口为443端口，其余选项保持默认，完成云服务器的添加。
6. 开启健康检查，其余健康检查参数保持默认。
7. 单击"下一步"。
8. 确认配置无误后，单击"立即创建"。
 
#### 步骤二：添加HTTPS监听器
1. 进入[弹性负载均衡列表页面](https://console.huaweicloud.com/vpc/?locale=zh-cn#/elb/list)。
2. 在目标弹性负载均衡实例的操作列，单击"添加监听器"。
3. 在添加监听器页面，前端协议选择"HTTPS"。
   图3添加HTTPS监听器并配置单向认证   
   ![](https://support.huaweicloud.com/bestpractice-elb/zh-cn_image_0000002133559530.png "点击放大") 
4. 单击"下一步：配置后端分配策略"，后端服务器组参数选择"使用已有"。选择已经创建完成的服务器组，完成后单击"下一步：确认配置"。
5. 确认配置参数后，单击"提交"，完成HTTPS监听器的创建。
 
#### 步骤三：配置域名解析
通过为域名添加A类型记录集解析，将域名解析到ELB的公网地址，使得客户端可以通过公网域名访问ELB。
以下提供将网站域名解析至IPv4地址的配置示例，更多关于A类型记录集的配置指导，请参考[快速添加网站域名解析](https://support.huaweicloud.com/qs-dns/dns_qs_0002.html)。
1. 进入[云解析服务控制台](https://console.huaweicloud.com/dns/?#/dns/dashboard)。
2. 在左侧树状导航栏，选择"公网域名"。 进入域名列表页面。
   
3. 在待添加记录集的公网域名所在行，单击操作列的"管理解析"。
4. 单击"添加记录集"，进入"添加记录集"页面。
5. 设置记录集参数，如[表2]所示。
    表2A类型记录集参数说明 
   | 参数       | **示例**               | 说明                                                                                                                                                                                      |
   |:---|:---|:---|
   | 记录类型     | **A -- 将域名指向IPv4地址** | 记录集的类型，本实践为**A -- 将域名指向IPv4地址**。                                                                                                                                                        |
   | 主机记录     | **www**              | 您域名的前缀。                                                                                                                                                                                 |
   | 线路类型     | **全网默认**             | 解析的线路类型用于DNS服务器在解析域名时，根据访问者的来源，返回对应的服务器IP地址。 默认值为"全网默认"。 全网默认：默认线路类型，当未根据访问者来源设置解析线路时，系统会返回默认解析结果。 |
   | TTL(秒)   | **300**              | 解析记录在本地DNS服务器的缓存时间，以秒为单位。 本实践使用默认值300秒。                                                                                                         |
   | 记录值      | **192.168.12.2**     | 域名对应的IPv4地址，本实践为ELB绑定的弹性公网IP地址。                                                                                                                                                         |
   | 高级配置（可选） | **-**                | 您可以单击![](https://support.huaweicloud.com/bestpractice-elb/zh-cn_image_0000002219795465.png)，展开折叠的高级配置区域，设置记录集的别名和权重并添加标签和描述，本文保持默认设置。                                                   |
      
   
6. 单击"确定"。
7. 返回"解析记录"页面。 添加完成后，您可以在域名对应的记录集列表中查看已添加的记录集。当记录集的状态显示为"正常"时，表示记录集添加成功。
   
 
#### 步骤四：验证负载均衡服务
ECS实例上分别部署应用，使访问ECS01时返回标题为"Welcome to ELB test page one!"的页面。详细操作，您可参考[搭建后端服务](https://support.huaweicloud.com/qs-elb/zh-cn_topic_0052569751.html#section4)。
通过浏览器访问**ELB绑定的域名** "https://ELB的域名"，显示如下页面，说明本次访问请求被ELB实例转发到弹性云服务器"ECS01"，全链路HTTPS应用部署成功。
图4访问到ECS01   
![](https://support.huaweicloud.com/bestpractice-elb/zh-cn_image_0000002169069325.png "点击放大")
