AWS ElasticLoadBalancer证书与域名不匹配

时间:2019-12-11 23:30:12

标签: amazon-web-services https certificate amazon-elb

我对Elastic Load Balancer如何与AWS中的证书一起使用感到困惑。我的ELB的域名是my-service1234568698.eu-west-2.elb.amazonaws.com,这就是我过去所说的REST端点的名称(我将ELB分配给具有Java微服务的docker实例的请求)。

我有自己的域,并且已经在ACM中为其创建了Amazon证书,但这是针对www.my-domain-here.com的,而不是亚马逊ELB的。当我尝试通过https致电ELB时,出现CORS错误,因为证书名称与AWS域名不匹配。用CURL调用并指定原始主机,我得到:

卷曲:(51)SSL:没有其他证书主体名称与目标主机名“ my-service1234568698.eu-west-2.elb.amazonaws.com”匹配

关于这应该如何工作的任何想法?

3 个答案:

答案 0 :(得分:1)

证书需要附加到AWS环境中的SSL终端节点。负载均衡器通常用作SSL终结点端点,这意味着它们将执行所有SSL握手和安全连接设置。为此,您的负载均衡器需要知道证书,链和私钥。您可以使用AWS控制台执行所有操作。

注册域名和创建证书不会保护您的域。由于您仍然需要将证书应用于您的域来源或AWS环境中的公共端点。不确定您在哪里应用了它?如果仅通过ACM要求证书而未在任何地方附加证书,则根据整个设置,您的负载均衡器可能是有效的选择。

编辑:根据评论,您还需要在路由53中创建CNAME记录,以将您自己的域指向负载均衡器。这样您就不需要点击神秘的负载均衡器domaoin名称,而是使用自己的注册域。

答案 1 :(得分:1)

您所缺少的是,应将www.my-domain.com指向域管理系统中的my-service1234568698.eu-west-2.elb.amazonaws.com(如果使用的是aws,则为Rotue53)。那么您应该使用域curl www.my-domain.com

卷曲

如果您使用Route53, 为A创建指向www.my-domain.com的{​​{1}}记录,并将my-service1234568698.eu-west-2.elb.amazonaws.com设置为Alias

答案 2 :(得分:0)

我明白了,我现在明白了。因此,www.my-domain.com由其他提供商托管(即不在aws上),并且在此托管我的SPA(使用REACT)。我的想法是,我将从那里打电话到我的AWS后端。如果我想在弹性负载均衡器上使用https,那是否意味着我需要两个域?一个用于我的网站,另一个用于我的AWS证书?