将 https 侦听器添加到 AWS Application Load Balancer 时出现问题
Posted
技术标签:
【中文标题】将 https 侦听器添加到 AWS Application Load Balancer 时出现问题【英文标题】:Trouble when adding https listener to AWS Application Load Balancer 【发布时间】:2021-12-28 01:06:51 【问题描述】:我目前正在尝试为我的后端程序(Spring Boot)设置 https。我的第一步是使用 AWS Fargate 部署我的后端程序,它在 http 中提供公共 IP。
然后我为 AWS Fargate 仅使用 http 设置了 AWS Application Load Balancer。 这个过程是成功的,我可以通过 LB 调用我的 BE 程序,其域如下所示:(这里的数字和 lb 名称不是真实的)
test-lb-123456.ap-southeast-1.elb.amazonaws.com
然后我想为LB添加一个https监听器,所以我点击了“添加监听器”和“请求新的ACM证书”,如下图所示
然后,当系统提示您输入域名时,我添加了上面提到的确切域。
但是这个请求总是失败并报错
Additional verification required to request certificates for one or more domain names in this request
我的问题是,我这样做是否正确?当提示要求新证书时,我是否应该在上面添加“test-lb ...”域?如果不是,那我应该使用什么域?
谢谢
编辑:显然图像可能还没有正确显示,因为我是一个低声誉的用户,希望图像能够在审核后显示。 reference
【问题讨论】:
【参考方案1】:您无法获得test-lb-123456.ap-southeast-1.elb.amazonaws.com
的有效 SSL 证书。这是因为该域属于 AWS。要在 ALB 上获取 HTTPS,您需要您自己的域。您可以从 Route53 或任何外部域名注册商处购买。
拥有自己的域后,您可以使用 AWS ACM 为其获取免费的 SSL 证书。
【讨论】:
这是否意味着我必须为我的后端服务购买另一个专用域,然后将此 test-lb-123456.... 注册到该域? @Aldoaldo 如果您已经拥有自己的域,您可以创建一个子域,例如(api.mydomain.com
)。所以从技术上讲,不需要一个完全独立的域。
我明白了,最后一个问题,所以在我创建 (api.mydomain.com) 之后,我需要将它连接到我的负载均衡器,对吗?
@Aldoaldo 你必须获得api.mydomain.com
的 ssl 证书,并且还要创建从 api.mydomain.com
到 Route53 中的 ALB 的 alais 记录
我明白了,注意到了。会尝试以上是关于将 https 侦听器添加到 AWS Application Load Balancer 时出现问题的主要内容,如果未能解决你的问题,请参考以下文章
AWS CloudFormation Application Load Balancer - 如何将 HTTP 侦听器重定向到 HTTPS 侦听器?