我在 AWS 上遇到 HTTPS 配置问题,希望您能提供帮助。
我已经拥有的:
- EC2 – 具有弹性 IP,开放端口截屏与安全组。
- 连接到 EC2 的负载均衡器(与 EC2 具有相同的安全组)。
- 来自 AWS (ACM) 的 SSL 证书
- 领域- “已转移”,从另一项服务(不是亚马逊)仅使用弹性 IP 进行 DNS 配置。(这可能是问题吗?)
- Route53 - 配置为领域使用 AWS(SSL)并且对于 IPV4 地址,我使用负载均衡器的别名。
怎么运行的:
- EC2:弹性 IP 和公共 DNS(仅适用于http) 我猜它应该可以工作。
- 负载均衡器:工作并提供HTTPS和HTTP仅通过 DNS 名称访问。
- Route53(域)-仅适用于 HTTP,每个 HTTPS 请求都返回 ERR_CONNECTION_REFUSED
我如何向自己解释这个问题(如果有问题请告诉我)领域正在从 DNS 设置重定向到连接到 EC2 的 Elastic IP,无法建立 SSL 连接,因为我使用 ACM 进行 SSL 证书认证,这时 LOAD BALANCER 就会来帮忙连接领域和SSL,但就像域名DNS 与 LBS 没有连接,AWS 无法仅从路线 53配置?
如果我将域 DNS 中 EC2 的弹性 IP 更改为负载均衡器的公共 DNS 名称,是否可以解决问题?
答案1
是的,使用实例的弹性 IP 作为 DNS A 记录正是导致问题的原因。DNS 记录需要直接指向负载均衡器。
答案2
将 DNS 指向 tge ELB CNAME 并将 Nginx/Apache 配置为 X-Proto Forward,以便服务器可以将 https 重定向请求转发到负载均衡器。如果查看 AWS 文档,您将能够轻松完成此操作。