一家公司开发了一个新的 Web 应用程序,用于处理 Amazon EC2 实例上托管的机密数据。该应用程序需要进行扩展,并且必须使用证书以对客户端进行身份验证。该应用程序配置为请求客户端的证书,并在初始握手过程中验证证书。
哪种 Elastic Load Balancing (ELB) 解决方案将满足这些要求?
A. 配置一个在端口 443 上包含 HTTPS 侦听器的 Application Load Balancer (ALB)。为 EC2 实例创建一个 Auto Scaling 组。将 Auto Scaling 组配置为 ALB 的目标组。将 HTTPS 配置为目标组的协议。
B. 配置一个在端口 443 上包含 TLS 侦听器的 Network Load Balancer (NLB)。为 EC2 实例创建一个 Auto Scaling 组。将 Auto Scaling 组配置为 NLB 的目标组。配置 NLB 以终止 TLS。将 TLS 配置为目标组的协议。
C. 配置一个在端口 443 上包含 TCP 侦听器的 Network Load Balancer (NLB)。为 EC2 实例创建一个 Auto Scaling 组。将 Auto Scaling 组配置为 NLB 的目标组。将 TCP 配置为目标组的协议。
D. 配置一个在端口 443 上包含 TLS 侦听器的 Application Load Balancer (ALB)。为 EC2 实例创建一个 Auto Scaling 组。将 Auto Scaling 组配置为 ALB 的目标组。将 TLS 配置为目标组的协议。
C
技巧:排除明显错误选项,在没有明显错误的选项中选择最合理的选项。
针对这家公司的 Web 应用程序需求,我们需要选择一个 Elastic Load Balancing (ELB) 解决方案,该方案需要支持机密数据的处理、扩展性,以及使用证书对客户端进行身份验证。需要使用具有负载均衡器的 Auto Scaling 组,以及使用负载均衡器将 TLS 会话传送到 Amazon EC2 实例。
A. 不正确。ALB 主要工作在 HTTP/HTTPS 协议层(第7层),支持基于内容的路由和复杂的流量管理。HTTPS 侦听器允许加密和解密工作转移到负载均衡器,但 ALB 通常会终止 HTTPS 连接,并将请求以 HTTP 形式转发到后端 EC2 实例。
B. 不正确。NLB 工作在传输层(第4层),支持 TCP 和 UDP 协议。NLB 通常用于传递加密流量到后端,而不进行解密。但NLB 并不支持直接配置 TLS 侦听器来终止 TLS。
C. 正确。该方案使用 Network Load Balancer (NLB) 与 TCP 侦听器,将加密的 TLS 流量直接传递到后端 EC2 实例,由实例进行解密和证书验证。如果后端应用程序需要处理 TLS 连接(包括客户端证书验证),NLB 可以配置为传递 TLS 流量到后端,然后在后端进行 TLS 终止和证书验证。要始终保持从客户端到 Auto Scaling 组中的 Web 服务器的会话,在端口 443 上具有 TCP 侦听器的 NLB 是唯一的选项。
D. 不正确。ALB 通常用于终止 TLS 连接,并以 HTTP 形式将请求转发到后端。这不符合后端应用程序直接处理加密连接和进行客户端证书验证的要求。