Ich möchte dem Application Load Balancer in meiner AWS-Elastic-Beanstalk-Umgebung zusätzliche SSL-Zertifikate hinzufügen.
Lösung
Der Application Load Balancer unterstützt mehrere SSL-Zertifikate, aber die Optionseinstellung SSLCertificateArns in Elastic Beanstalk akzeptiert nur ein Zertifikat pro Listener. Um Ihrem Application Load Balancer zusätzliche SSL-Zertifikate hinzuzufügen, müssen Sie eine ressourcenbasierte .ebextension erstellen.
Fügen Sie Ihrem Application Load Balancer ein zweites SSL-Zertifikat hinzu
1.Erstellen Sie einen Ordner .ebextensions im Stammverzeichnis des Quellpakets.
2.Erstellen Sie im Ordner .ebextensions eine .config-Datei, die auf dem folgenden Beispiel basiert:
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"
**Hinweis:**Ersetzen Sie im vorherigen Codebeispiel cert-arn1 und cert-arn2 durch die Amazon Resource Names (ARNs) Ihres Zertifikats.
Um zusätzliche Zertifikate hinzuzufügen, fügen Sie eine neue ListenerCertificate-Ressource hinzu.
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"
**Hinweis:**Ersetzen Sie im vorherigen Codebeispiel cert-arn1, cert-arn-2 und cert-arn3 durch die ARNs Ihres Zertifikats.
Der Abschnitt option_settings erstellt den HTTPS-Listener auf Port 443 und hängt ein Zertifikat an diesen Listener an. Wenn Sie den HTTPS-Listener von der Elastic-Beanstalk-Konsole aus erstellt haben, können Sie den Abschnitt option_settings aus der .config-Datei entfernen. Im Abschnitt Ressourcen wird eine weitere Ressource erstellt, die dem Listener ein zusätzliches Zertifikat anfügt.
3.Wenden Sie die .ebextensions-Updates auf Ihr Anwendungspaket an.
4.Stellen Sie Ihre Anwendung erneut bereit.
Ihre Anwendung aktualisiert den vorhandenen Application Load Balancer, ohne ihn zu ersetzen.
**Wichtig:**Das zusätzliche Zertifikat wird nicht in der Elastic-Beanstalk-Konsole angezeigt. Um zu überprüfen, ob Ihr Zertifikat dem Application Load Balancer hinzugefügt wurde, führen Sie die Schritte im folgenden Abschnitt aus.
Vergewissern Sie sich, dass Ihre SSL-Zertifikate dem Application Load Balancer Listener 443 hinzugefügt wurden
- Öffnen Sie die Amazon Elastic Compute Cloud (Amazon EC2)-Konsole.
- Wählen Sie dann im Navigationsbereich die Option Load Balancers aus.
- Wählen Sie die Registerkarte Listener aus.
- Wählen Sie für Listener 443 Zertifikate anzeigen/bearbeiten.