首页 > 解决方案 > AWS 通配符证书的子域问题

问题描述

我有一个域,例如连接到 ELB 的 Amazon 路由 53 中的 domain.com。

我在同一个托管区域中有几个子域,例如 one.domain.com、two.domain.com 和 three.domain.com,它们通过其 IP 连接到另一个 ec2 实例。

现在,我在 AWS Certificate Manager 中为 domain.com 和 *.domain.com 创建了一个通配符 SSL,然后在 *domain.com 的路由 53(在同一托管区域中)中添加了一条 A 记录,该记录将指向相同的 ELB域名.com。

现在 ELB 中的所有子域都可以正常工作,但是通过其 IP 连接到另一个 ec2 实例的其他子域 one.domain.com、two.domain.com 和 three.domain.com 不起作用。

可能是什么原因?

标签: amazon-web-servicesssl-certificateamazon-route53

解决方案


您应该删除 EC2 端的 SSL、ELB 和 ACM 的 SSL 句柄。

来自 AWS 文档:

负载均衡器接收来自客户端的请求,并将它们分布在向负载均衡器注册的 EC2 实例中。

您可以创建一个同时侦听 HTTP (80) 和 HTTPS (443) 端口的负载均衡器。如果您指定 HTTPS 侦听器向端口 80 上的实例发送请求,负载均衡器将终止请求,并且从负载均衡器到实例的通信不会加密。如果 HTTPS 侦听器在端口 443 上向实例发送请求,则从负载均衡器到实例的通信会被加密。

如果您的负载均衡器使用加密连接与实例通信,您可以选择启用实例身份验证。这可确保负载均衡器仅在实例的公钥与您为此目的指定给负载均衡器的密钥匹配时才与实例通信。

有关更多信息,请阅读使用 HTTPS 侦听器创建 Classic Load Balancer


推荐阅读