如何在 Elastic Beanstalk 环境中向应用程序负载均衡器添加多个 SSL 证书?

1 分钟阅读
0

我想在我的 AWS Elastic Beanstalk 环境中向应用程序负载均衡器添加额外的 SSL 证书。

解决方法

应用程序负载均衡器支持多个 SSL 证书,但是 Elastic Beanstalk 中的 SSLCertificateArns 选项仅接受每个侦听器一个证书。要向应用程序负载均衡器添加其他 SSL 证书,必须创建基于资源的 .ebextension。

向应用程序负载均衡器添加第二个 SSL 证书

1.    在源包的根目录下创建 .ebextensions 文件夹

2.    在 .ebextensions 文件夹中,根据以下示例创建一个 .config 文件:

option\_settings:
aws:elbv2:listener:443:
Protocol: HTTPS
SSLCertificateArns: "cert-arn-1"
Resources:
AddingSSLCert2:
Type: "AWS::ElasticLoadBalancingV2::ListenerCertificate"
Properties:
ListenerArn:
Ref : "AWSEBV2LoadBalancerListener443"
Certificates:
- CertificateArn: "cert-arn-2"

**注意:**在前面的代码片段中,将 cert-arn1cert-arn2 替换为证书的 Amazon 资源名称(ARN)。

要添加其他证书,请添加新的 ListenerCertificate 资源:

option\_settings:
aws:elbv2:listener:443:
Protocol: HTTPS
SSLCertificateArns: "cert-arn-1"
Resources:
AddingSSLCert2:
Type: "AWS::ElasticLoadBalancingV2::ListenerCertificate"
Properties:
ListenerArn:
Ref : "AWSEBV2LoadBalancerListener443"
Certificates:
- CertificateArn: "cert-arn-2"
AddingSSLCert3:
Type: "AWS::ElasticLoadBalancingV2::ListenerCertificate"
Properties:
ListenerArn:
Ref : "AWSEBV2LoadBalancerListener443"
Certificates:
- CertificateArn: "cert-arn-3"

**注意:**在前面的代码片段中,将 cert-arn1cert-arn-2cert-arn3 替换为您的证书 ARN。

option_settings 部分在端口 443 上创建 HTTPS 侦听器并将一个证书附加到该侦听器。如果您从 Elastic Beanstalk 控制台创建 HTTPS 侦听器,则可以从 .config 文件中删除 option_settings 部分。Resources 部分创建了另一个资源,该资源将一个额外的证书附加到侦听器。

3.    将 .ebextensions 更新应用于您的应用程序包。

4.    重新部署您的应用程序。

您的应用程序会更新现有的应用程序负载均衡器,而无需更换它。

**重要事项:**这个额外的证书不会出现在 Elastic Beanstalk 控制台中。要验证您的证书是否已添加到应用程序负载均衡器,请完成以下部分中的步骤。

确认您的 SSL 证书已添加到应用程序负载均衡器侦听器 443

  1. 打开 Amazon Elastic Compute Cloud(Amazon EC2)控制台
  2. 然后,从导航窗格中选择负载均衡器
  3. 选择侦听器选项卡。
  4. 对于侦听器 443,选择查看/编辑证书
AWS 官方
AWS 官方已更新 7 个月前