更新时间:2022-09-30 GMT+08:00
分享

添加HTTPS监听器

操作场景

HTTPS协议适用于需要加密传输的应用。您可以添加一个HTTPS监听转发来自HTTPS协议的请求。ELB对于用户的HTTPS的请求进行解密,然后发送至后端服务器;后端服务器处理完请求后的返回包首先发送至ELB,由ELB进行加密后,再传回用户侧。

添加HTTPS监听器时,要求后端子网预留足够的IP地址,可以通过负载均衡器的“基本信息 > 后端子网”添加多个后端子网来增加后端子网的IP地址。添加子网后,请取消对应子网的ACL配置,否则可能导致负载均衡访问异常。

如果您不希望负载均衡器对HTTPS流量进行解密,可以通过配置相同端口的TCP监听器将HTTPS流量透传到后端服务器。具体原理参见TCP监听器将HTTPS流量透传到后端服务器

  • 独享型负载均衡前端协议为“HTTPS”时,后端协议可以选择“HTTP”或“HTTPS”。
  • 共享型负载均衡前端协议为“HTTPS”时,后端协议默认为“HTTP”,且不支持修改。
  • 如果您的独享型负载均衡实例类型为网络型(TCP/UDP),则无法创建HTTPS监听器。

添加独享型负载均衡HTTPS监听器

  1. 登录管理控制台。
  2. 在管理控制台左上角单击图标,选择区域和项目。
  3. 单击页面左上角的,选择“网络 > 弹性负载均衡”。
  4. 在“负载均衡器”界面,单击需要添加监听器的负载均衡名称。
  5. 切换到“监听器”页签,单击“添加监听器”,配置监听器。配置监听器参数参见表1
    表1 独享型负载均衡配置监听器参数说明

    参数

    说明

    示例

    名称

    监听器名称。

    listener-pnqy

    前端协议

    客户端与负载均衡监听器建立流量分发连接的协议。

    协议选择HTTPS。

    HTTPS

    前端端口

    客户端与负载均衡监听器建立流量分发连接的端口。

    取值范围为:[1-65535]。

    80

    SSL解析方式

    确保服务安全,请选择客户端到服务器端认证方式。

    可选择“单向认证”或“双向认证”。

    • 如仅进行服务器端认证,请选择单向认证。
    • 双向认证需要负载均衡实例与访问用户互相提供身份认证,从而允许通过认证的用户访问负载均衡实例,后端服务器无需额外配置双向认证。

    单向认证

    服务器证书

    协议类型为HTTPS时,需绑定服务器证书。

    服务器证书用于SSL握手协商,需提供证书内容和私钥。详见创建/修改/删除证书

    -

    CA证书

    协议类型为HTTPS时,需绑定CA证书。

    CA证书又称客户端CA公钥证书,用于验证客户端证书的签发者;在开启HTTPS双向认证功能时,只有当客户端能够出具指定CA签发的证书时,HTTPS连接才能成功。详见创建/修改/删除证书

    -

    开启SNI

    HTTPS协议的负载均衡可以选择是否开启SNI。

    SNI是为了解决一个服务器使用多个域名和证书的TLS扩展。

    开启SNI后,允许客户端在发起SSL握手请求时就提交请求的域名信息,ELB收到SSL请求后,会根据域名去查找证书,如果找到域名对应的证书,则返回该证书;如果没有找到域名对应的证书,则返回缺省证书。详见SNI证书-HTTPS监听器绑定多个证书(多域名访问)

    -

    SNI证书

    HTTPS协议的负载均衡设置开启SNI后需要选择域名对应的证书。

    可选择已创建或者创建新的SNI证书。详见创建/修改/删除证书

    -

    高级配置

    访问策略

    支持通过白名单和黑名单进行访问控制,更多信息请参见访问控制策略

    • 允许所有IP访问
    • 黑名单
    • 白名单

    白名单

    IP地址组

    设置白名单或者黑名单时,必须选择一个IP地址组。如果还未创建IP地址组,需要先创建IP地址组,更多关于IP地址组的信息请参见IP地址组(黑名单/白名单)

    ipGroup-b2

    HTTP/2

    协议类型为HTTPS时,可选择是否支持该协议类型。详见HTTP/2

    -

    安全策略

    支持选择可用的安全策略,更多信息请参见安全策略

    安全策略TLS-1-0

    获取弹性公网IP

    通过X-Forwarded-ELB-IP头字段获取ELB实例公网IP地址。

    若您需要将ELB公网IP透传到后端,只需在创建HTTPS监听器时,打开该开关。

    -

    获取监听器端口号

    通过X-Forwarded-Port头字段获取ELB实例监听器端口号。

    若您需要将ELB实例监听器的端口号透传到后端,只需在创建HTTP监听器时,打开该开关。

    -

    获取客户端请求端口号

    通过X-Forwarded-For-Port头字段获取客户端请求端口号。

    若您需要将客户端请求的端口号透传到后端,只需在创建HTTP监听器时,打开该开关。

    -

    重写X-Forwarded-Host

    • 开关关闭:ELB透传客户端的X-Forwarded-Host。
    • 开关开启:ELB以客户端请求头的Host重写X-Forwarded-Host向后端传输。

    -

    空闲超时时间(秒)

    如果在超时时间内一直没有访问请求,负载均衡会中断当前连接,直到下一次请求到来时再重新建立新的连接。

    时间取值范围[0-4000]。

    60

    请求超时时间(秒)

    客户端向负载均衡发起请求,如果在超时时间内客户端没有完成整个请求的传输,负载均衡将放弃等待关闭连接。

    时间取值范围[1-300]。

    60

    响应超时时间(秒)

    负载均衡向后端服务器发起请求,如果超时时间内接收请求的后端服务器无响应,负载均衡会向其他后端服务器重试请求。如果重试期间后端服务器一直没有响应,则负载均衡会给客户端返回HTTP 504错误码。

    时间取值范围[1-300]。

    说明:

    当开启了会话保持功能时,响应超时时间内如果对应的后端服务器无响应,则直接会返回HTTP 504错误码。

    60

    描述

    对于监听器描述。

    字数范围:0/255。

    -

  6. 单击“下一步:配置后端分配策略”。配置后端服务器组参数请参见表2
    表2 独享型负载均衡配置后端服务器组参数说明

    参数

    说明

    示例

    后端服务器

    把具有相同特性的后端服务器放在一个组。

    • 新创建
    • 使用已有
      说明:

      使用已有后端服务器组时,请确保此后端服务器组未被使用。并且只能选择前端协议匹配的后端服务器组。例如前端协议是TCP时,后端协议只能是TCP。

    新创建

    名称

    后端服务器组名称。

    server_group-sq4v

    后端协议

    云服务器开通的协议。

    前端协议为HTTPS时,后端协议支持修改,可修改为HTTP或HTTPS。

    HTTP

    分配策略类型

    负载均衡采用的算法。

    • 加权轮询算法:根据后端服务器的权重,按顺序依次将请求分发给不同的服务器。它用相应的权重表示服务器的处理性能,按照权重的高低以及轮询方式将请求分配给各服务器,相同权重的服务器处理相同数目的连接数。
    • 加权最少连接:最少连接是通过当前活跃的连接数来估计服务器负载情况的一种动态调度算法。加权最少连接就是在最少连接数的基础上,根据服务器的不同处理能力,给每个服务器分配不同的权重,使其能够接受相应权值数的服务请求。
    • 源IP算法:将请求的源IP地址进行一致性Hash运算,得到一个具体的数值,同时对后端服务器进行编号,按照运算结果将请求分发到对应编号的服务器上。这可以使得对不同源IP的访问进行负载分发,同时使得同一个客户端IP的请求始终被派发至某特定的服务器。
    说明:
    • 用户可以根据自身需求选择相应的算法来分配用户访问流量,提升负载均衡能力。
    • 对于加权轮询算法和加权最少连接,当服务器的权重为“0”时,将不会被分发访问请求。

    加权轮询算法

    会话保持

    开启会话保持后,弹性负载均衡将属于同一个会话的请求都转发到同一个服务器进行处理。

    说明:

    当分配策略类型为“加权轮询算法”或"加权最少连接”时,可配置会话保持。

    -

    会话保持类型

    前端协议为HTTP或HTTPS时,支持负载均衡器cookie类型的会话保持。

    • 负载均衡器cookie:负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个后端服务器处理。

    负载均衡器cookie

    会话保持时间(分钟)

    当分配策略类型选择“加权轮询算法”或“加权最少连接”,会话保持开启后,需添加会话保持时间。

    • 四层会话保持的会话保持时间取值范围为[1,60]。
    • 七层会话保持的会话保持时间取值范围为[1,1440]。

    20

    描述

    后端服务器组的描述。

    字数范围:0/255。

    -

  7. 单击“下一步:添加后端服务器”。添加后端服务器并配置健康检查。添加后端服务器详见添加或移除后端服务器(独享型),配置健康检查参数请参见表3
    表3 独享型负载均衡配置健康检查参数说明

    参数

    说明

    示例

    是否开启

    开启或者关闭健康检查。

    -

    协议

    健康检查支持HTTP、TCP、HTTPS协议,设置后不可修改。

    HTTP

    端口

    健康检查端口号,取值范围[1,65535],为可选参数。

    说明:

    未配置健康检查端口时,默认使用后端云服务器端口进行健康检查。配置后,使用配置的健康检查端口进行健康检查。

    80

    域名

    健康检查的请求域名。

    默认值为空,由数字、字母、‘-’、‘.’组成的字符串,只能以数字或字符开头。

    只有健康检查协议为HTTP时,需要设置。

    www.elb.com

    健康检查配置

    检查间隔(秒)

    每次健康检查响应的最大间隔时间。

    取值范围[1-50]。

    5

    超时时间(秒)

    每次健康检查响应的最大超时时间。取值范围[1-50]。

    3

    检查路径

    指定健康检查的URL地址。当“协议”为HTTP时生效。检查路径只能以/开头,长度范围[1-80]。

    支持使用英文字母、数字和‘-’、‘/’、‘.’、‘%’、‘&’以及特殊字符_~';@$*+,=!:()。

    说明:

    例如:

    访问链接为:http://www.example.com/chat/try/,则检查路径填写“/chat/try/”。

    访问链接为:http://192.168.63.187:9096/chat/index.html,则检查路径填写“/chat/index.html”。

    /index.html

    最大重试次数

    健康检查最大的重试次数,取值范围[1-10]。

    3

    HTTP状态码

    自定义健康检查返回的状态码。当“协议”为HTTP或HTTPS时生效。

    可输入200-599范围内不重复的单个数字或正序的数字区间。多个HTTP状态码使用逗号隔开,最多支持5个。

    说明:

    如果您要使用该特性,请进入至ELB服务控制台后,单击页面左下角的“体验新版”。目前新版控制台在公测中,待公测结束后即可正常使用。

    200

  8. 单击“下一步:确认配置”。
  9. 确认配置无误后,单击“提交”。

添加共享型负载均衡HTTPS监听器

  1. 登录管理控制台。
  2. 在管理控制台左上角单击图标,选择区域和项目。
  3. 单击页面左上角的,选择“网络 > 弹性负载均衡”。
  4. 在“负载均衡器”界面,单击需要添加监听器的负载均衡名称。
  5. 切换到“监听器”页签,单击“添加监听器”,配置监听器。配置监听器参数参见表4
    表4 共享型负载均衡配置监听器参数说明

    参数

    说明

    示例

    名称

    监听器名称。

    listener-pnqy

    前端协议

    客户端与负载均衡监听器建立流量分发连接的协议。

    协议选择HTTPS。

    HTTPS

    前端端口

    客户端与负载均衡监听器建立流量分发连接的端口。

    取值范围为:[1-65535]。

    80

    SSL解析方式

    确保服务安全,请选择客户端到服务器端认证方式。

    可选择“单向认证”或“双向认证”。

    • 如仅进行服务器端认证,请选择单向认证。
    • 双向认证需要负载均衡实例与访问用户互相提供身份认证,从而允许通过认证的用户访问负载均衡实例,后端服务器无需额外配置双向认证。

    单向认证

    服务器证书

    协议类型为HTTPS时,需绑定服务器证书。

    服务器证书用于SSL握手协商,需提供证书内容和私钥。详见创建/修改/删除证书

    -

    开启SNI

    HTTPS协议的负载均衡可以选择是否开启SNI。

    SNI是为了解决一个服务器使用多个域名和证书的TLS扩展。

    开启SNI后,允许客户端在发起SSL握手请求时就提交请求的域名信息,ELB收到SSL请求后,会根据域名去查找证书,如果找到域名对应的证书,则返回该证书;如果没有找到域名对应的证书,则返回缺省证书。详见SNI证书-HTTPS监听器绑定多个证书(多域名访问)

    -

    SNI证书

    HTTPS协议的负载均衡设置开启SNI后需要选择域名对应的证书。

    可选择已创建或者创建新的SNI证书。详见创建/修改/删除证书

    -

    高级配置

    访问策略

    支持通过白名单和黑名单进行访问控制,更多信息请参见访问控制策略

    • 允许所有IP访问
    • 黑名单
    • 白名单

    白名单

    IP地址组

    设置白名单或者黑名单时,必须选择一个IP地址组。如果还未创建IP地址组,需要先创建IP地址组,更多关于IP地址组的信息请参见IP地址组(黑名单/白名单)

    ipGroup-b2

    HTTP/2

    协议类型为HTTPS时,可选择是否支持该协议类型。详见HTTP/2

    -

    安全策略

    支持选择可用的安全策略,更多信息请参见安全策略

    安全策略TLS-1-2

    获取弹性公网IP

    通过X-Forwarded-ELB-IP头字段获取ELB实例公网IP地址。

    若您需要将ELB公网IP透传到后端,只需在创建HTTP监听器时,打开该开关。

    -

    空闲超时时间(秒)

    如果在超时时间内一直没有访问请求,负载均衡会中断当前连接,直到下一次请求到来时再重新建立新的连接。

    时间取值范围[0-4000]。

    60

    请求超时时间(秒)

    客户端向负载均衡发起请求,如果在超时时间内客户端没有完成整个请求的传输,负载均衡将放弃等待关闭连接。

    时间取值范围[1-300]。

    60

    响应超时时间(秒)

    负载均衡向后端服务器发起请求,如果超时时间内接收请求的后端服务器无响应,负载均衡会向其他后端服务器重试请求。如果重试期间后端服务器一直没有响应,则负载均衡会给客户端返回HTTP 504错误码。

    时间取值范围[1-300]。

    说明:

    当开启了会话保持功能时,响应超时时间内如果对应的后端服务器无响应,则直接会返回HTTP 504错误码。

    60

    描述

    对于监听器描述。

    字数范围:0/255。

    -

  6. 单击“下一步:配置后端分配策略”。配置后端服务器组参数请参见表5
    表5 共享型负载均衡配置后端服务器组参数说明

    参数

    说明

    示例

    后端服务器

    把具有相同特性的后端服务器放在一个组。

    • 新创建
    • 使用已有
      说明:

      使用已有后端服务器组时,请确保此后端服务器组未被使用。并且只能选择前端协议匹配的后端服务器组。例如前端协议是TCP时,后端协议只能是TCP。

    新创建

    名称

    后端服务器组名称。

    server_group-sq4v

    后端协议

    云服务器开通的协议。

    前端协议为HTTPS时,后端协议默认为HTTP,不支持修改。

    HTTP

    分配策略类型

    负载均衡采用的算法。

    • 加权轮询算法:根据后端服务器的权重,按顺序依次将请求分发给不同的服务器。它用相应的权重表示服务器的处理性能,按照权重的高低以及轮询方式将请求分配给各服务器,相同权重的服务器处理相同数目的连接数。
    • 加权最少连接:最少连接是通过当前活跃的连接数来估计服务器负载情况的一种动态调度算法。加权最少连接就是在最少连接数的基础上,根据服务器的不同处理能力,给每个服务器分配不同的权重,使其能够接受相应权值数的服务请求。
    • 源IP算法:将请求的源IP地址进行一致性Hash运算,得到一个具体的数值,同时对后端服务器进行编号,按照运算结果将请求分发到对应编号的服务器上。这可以使得对不同源IP的访问进行负载分发,同时使得同一个客户端IP的请求始终被派发至某特定的服务器。
    说明:
    • 用户可以根据自身需求选择相应的算法来分配用户访问流量,提升负载均衡能力。
    • 对于加权轮询算法和加权最少连接,当服务器的权重为“0”时,将不会被分发访问请求。

    加权轮询算法

    会话保持

    开启会话保持后,弹性负载均衡将属于同一个会话的请求都转发到同一个服务器进行处理。

    说明:

    当分配策略类型为“加权轮询算法”或"加权最少连接”时,可配置会话保持。

    -

    会话保持类型

    共享型负载均衡,HTTP和HTTPS协议支持负载均衡器cookie、应用程序cookie类型。

    • 负载均衡器cookie:负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个后端服务器处理。
    • 应用程序cookie:该选项依赖于后端应用。后端应用生成一个cookie值,后续所有包含这个cookie值的请求都会由同一个后端服务器处理。

    负载均衡cookie

    cookie名称

    当会话保持选择应用程序cookie时,需要填写cookie名称。

    cookieName-qsps

    会话保持时间(分钟)

    当分配策略类型选择“加权轮询算法”或“加权最少连接”,会话保持开启后,需添加会话保持时间。

    • 四层会话保持的会话保持时间取值范围为[1,60]。
    • 七层会话保持的会话保持时间取值范围为[1,1440]。

    20

    描述

    后端服务器组的描述。

    字数范围:0/255。

    -

  7. 单击“下一步:添加后端服务器”。添加后端服务器并配置健康检查。添加后端服务器详见添加或移除后端服务器(共享型),配置健康检查参数请参见表6
    表6 共享型负载均衡配置健康检查参数说明

    参数

    说明

    示例

    是否开启

    开启或者关闭健康检查。

    -

    协议

    健康检查支持TCP、HTTP协议,设置后不可修改。

    HTTP

    域名

    健康检查的请求域名。

    默认值为空,由数字、字母、‘-’、‘.’组成的字符串,只能以数字或字符开头。

    只有健康检查协议为HTTP时,需要设置。

    www.elb.com

    端口

    健康检查端口号,取值范围[1,65535],为可选参数。

    说明:

    未配置健康检查端口时,默认使用后端云服务器端口进行健康检查。配置后,使用配置的健康检查端口进行健康检查。

    80

    健康检查配置

    检查间隔(秒)

    每次健康检查响应的最大间隔时间。

    取值范围[1-50]。

    5

    超时时间(秒)

    每次健康检查响应的最大超时时间。取值范围[1-50]。

    3

    检查路径

    指定健康检查的URL地址。当“协议”为HTTP时生效。检查路径只能以/开头,长度范围[1-80]。

    支持使用英文字母、数字和‘-’、‘/’、‘.’、‘%’、‘&’以及特殊字符_~';@$*+,=!:()。

    说明:

    例如:

    访问链接为:http://www.example.com/chat/try/,则检查路径填写“/chat/try/”。

    访问链接为:http://192.168.63.187:9096/chat/index.html,则检查路径填写“/chat/index.html”。

    /index.html

    最大重试次数

    健康检查最大的重试次数,取值范围[1-10]。

    3

  8. 单击“下一步:确认配置”。
  9. 确认配置无误后,单击“提交”。
  10. 单击“完成”。

TCP监听器将HTTPS流量透传到后端服务器

如果您不希望负载均衡器对HTTPS流量进行解密,可以通过配置相同端口的TCP监听器将HTTPS流量透传到后端服务器。并且在实例的安全组配置相同端口的TCP入方向规则,以允许相同端口上来自负载均衡器的入站流量。

如下图所示,TCP监听器如何将端口为443的HTTPS流量进行无解密透传到后端服务器。

图1 TCP透传HTTPS流量

分享:

    相关文档

    相关产品