AWS Elastic Beanstalk 환경에서 Application Load Balancer에 SSL 인증서를 추가하려고 합니다.
간략한 설명
Application Load Balancer는 여러 SSL 인증서를 지원하지만, Elastic Beanstalk의 SSLCertificateArns 옵션 설정은 리스너 1개당 1개의 인증서만 허용합니다.
Application Load Balancer에 SSL 인증서를 추가하려면 리소스 기반 .ebextension을 생성해야 합니다.
해결 방법
Application Load Balancer에 두 번째 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-arn1과 cert-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-arn1, cert-arn-2 및 cert-arn3를 인증서 ARN으로 바꿉니다.
option_settings 섹션에서 포트 443에 HTTPS 리스너를 생성하고 인증서를 이 리스너와 연결합니다. 콘솔에서 HTTPS 리스너를 생성했으면 이제 .config 파일에서 options_settings 섹션을 제거해도 됩니다. 리소스 섹션에서 추가 인증서를 리스너에 연결하는 다른 리소스를 생성합니다.
3. .ebextensions 업데이트를 애플리케이션 번들에 적용합니다.
4. 애플리케이션을 다시 배포합니다.
애플리케이션은 교체 없이 기존 Application Load Balancer를 업데이트합니다.
중요: 추가 인증서는 Elastic Beanstalk 콘솔에 표시되지 않습니다. 인증서가 Application Load Balancer에 추가되는지 확인하려면 SSL 인증서가 Application Load Balancer 리스너 443에 추가되었는지 확인 섹션의 단계를 완료하세요.
SSL 인증서가 Application Load Balancer 리스너 443에 추가되었는지 확인
1. Amazon Elastic Compute Cloud(Amazon EC2) 콘솔을 엽니다.
2. 탐색 창에서 로드 밸런서를 선택하십시오.
3. [리스너] 탭을 선택합니다.
4. 리스너 443에서 [인증서 보기/편집]을 선택합니다.
리스너 443과 연결된 인증서 두 개가 표시됩니다.</p