AWS CLI를 사용하는 ELB 리스너와 연결된 활성 SSL 보안 정책을 확인하려면 어떻게 해야 하나요?
최종 업데이트 날짜: 2022년 2월 28일
AWS Command Line Interface(AWS CLI)를 사용하여 탄력적 로드 밸런싱(ELB)의 HTTPS 또는 SSL 리스너에 대한 활성 보안 정책을 확인하려고 합니다. 어떻게 해야 합니까?
간략한 설명
참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우, 최신 버전의 AWS CLI를 사용하고 있는지 확인합니다.
Amazon Elastic Compute Cloud(Amazon EC2)용 로드 밸런서에 HTTPS 리스너를 추가할 수 있습니다. 리스너에 대한 SSL 보안 정책이 Amazon EC2 콘솔에 표시됩니다. 지침은 HTTPS/SSL 로드 밸런서에 대한 SSL 협상 구성 업데이트를 참조하세요.
다음과 유사한 AWS CLI 명령 describe-load-balancer-policies을 사용하여 로드 밸런서 리스너 SSL 보안 정책 이름 및 사전 정의된 SSL 보안 정책을 표시할 수 있습니다.
aws elb describe-load-balancer-policies --load-balancer-name EXAMPLEELB --query "PolicyDescriptions[?PolicyTypeName==`SSLNegotiationPolicyType`].{PolicyName:PolicyName,ReferenceSecurityPolicy:PolicyAttributeDescriptions[0].AttributeValue}" --output table
출력 예시:
-------------------------------------------------------------------------------------
| DescribeLoadBalancerPolicies |
+-------------------------------------------------------+---------------------------+
| PolicyName | ReferenceSecurityPolicy |
+-------------------------------------------------------+---------------------------+
| ELBSecurityPolicy-2015-05 | ELBSecurityPolicy-2015-05 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1446825761570 | ELBSecurityPolicy-2015-03 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1446774067525 | ELBSecurityPolicy-2015-05 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1446774575245 | ELBSecurityPolicy-2015-05 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447023243695 | ELBSecurityPolicy-2014-10 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447039877149 | false |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447039147749 | ELBSecurityPolicy-2011-08 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447102065672 | ELBSecurityPolicy-2014-10 |
+-------------------------------------------------------+---------------------------+
참고: ReferenceSecurityPolicy 값 false는 해당 정책이 사전 정의된 보안 정책 중 하나를 사용하여 생성되지 않았음을 나타냅니다.
해당 출력은 로드 밸런서 리스너와 연결된 SSL 보안 정책을 반환하지만 어떤 정책이 활성 상태인지 나타내지는 않습니다.
해결 방법
1. 다음과 유사한 AWS 명령 describe-load-balancers을 실행합니다.
aws elb describe-load-balancers --load-balancer-name EXAMPLEELB --query "LoadBalancerDescriptions[*].{ActivePolicy:ListenerDescriptions}" --output table
출력 예시:
---------------------------------------------------------------------------------
| DescribeLoadBalancers |
|| ActivePolicy ||
||| Listener |||
||+-------------------+-------------------------------------------------------+||
||| InstancePort | 443 |||
||| InstanceProtocol | SSL |||
||| LoadBalancerPort | 443 |||
||| Protocol | SSL |||
||| SSLCertificateId | arn:aws:iam::803981987763:server-certificate/ELBSSL |||
||+-------------------+-------------------------------------------------------+||
||| PolicyNames |||
||+---------------------------------------------------------------------------+||
||| AWSConsole-SSLNegotiationPolicy-TESTELB-1447102065672 |||
||+---------------------------------------------------------------------------+||
|| ActivePolicy ||
||| Listener |||
||+-----------------------------------------------------+---------------------+||
||| InstancePort | 80 |||
||| InstanceProtocol | HTTP |||
||| LoadBalancerPort | 80 |||
||| Protocol | HTTP |||
||+-----------------------------------------------------+---------------------+||
출력은 로드 밸런서와 연결된 정책 이름을 반환합니다.
2. 정책에 대한 자세한 내용을 보려면 다음과 유사한 describe-load-balancer-policies AWS CLI 명령을 실행합니다.
aws elb describe-load-balancer-policies --load-balancer-name EXAMPLEELB --policy-name AWSConsole-SSLNegotiationPolicy-TESTELB-1447102065672 --query "PolicyDescriptions[0].{ReferenceSecurityPolicy:PolicyAttributeDescriptions[0].AttributeValue}" --output table
출력 예시:
----------------------------------------------------------
| DescribeLoadBalancerPolicies |
+--------------------------+-----------------------------+
| ReferenceSecurityPolicy | ELBSecurityPolicy-2014-10 |
+--------------------------+-----------------------------+