기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Classic Load Balancer의 SSL 협상 구성 업데이트
Elastic Load Balancing은 클라이언트와 로드 밸런서 간의 연결을 협상하는 데 사용할 SSL 협상 구성이 사전 정의된 보안 정책을 제공합니다. 리스너용 HTTPS/SSL 프로토콜을 사용하고 있는 경우에는 사전 정의 보안 정책 중 하나를 사용하거나 자체적으로 보안 정책을 지정할 수 있습니다.
보안 정책에 대한 자세한 내용은 Classic Load Balancer를 위한 SSL 협상 구성를 참조하십시오. Elastic Load Balancing이 제공한 보안 정책의 구성에 대한 자세한 내용은 Classic Load Balancer에 대해 미리 정의된 SSL 보안 정책 섹션을 참조하세요.
보안 정책과 연계하지 않고 HTTPS/SSL 리스너를 생성하는 경우, Elastic Load Balancing은 로드 밸런서와 함께 기본 사전 정의인 ELBSecurityPolicy-2016-08를 연계합니다.
원할 경우, 사용자 지정 구성을 생성할 수 있습니다 로드 밸런서 구성을 업그레이드하기 전에 보안 정책을 테스트하는 것이 좋습니다.
다음 예제는 HTTPS/SSL 리스너를 위한 SSL 협상 구성을 업데이트하는 방법을 보여줍니다. 변경을 해도 로드 밸런서 노드에 이미 수신되어 정상 상태 대상으로 라우팅이 보류 중인 요청에는 영향을 미치지 않지만, 업데이트된 구성은 수신된 새 요청에서 사용됩니다.
콘솔을 사용하여 SSL 협상 구성 업데이트
기본적으로 Elastic Load Balancing은 로드 밸런서에 최신 사전 정의 정책을 연결합니다. 새로운 사전 정의 정책이 추가되면 새로운 사전 정의 정책을 사용하도록 로드 밸런서를 업데이트하는 것이 좋습니다. 아니면 다른 사전 정의 보안 정책을 선택하거나 사용자 지정 정책을 생성할 수 있습니다.
콘솔을 사용하여 HTTPS/SSL 로드 밸런서의 SSL 협상 구성을 업데이트하려면
https://console.aws.amazon.com/ec2/
에서 Amazon EC2 콘솔을 엽니다. -
탐색 창의 Load Balancing 아래에서 로드 밸런서를 선택합니다.
-
로드 밸런서 이름을 선택하여 세부 정보 페이지를 엽니다.
-
리스너 탭에서 리스너 관리를 선택합니다.
-
리스너 관리 페이지에서 업데이트할 리스너를 찾고, 보안 정책의 편집에서 다음 옵션 중 하나를 사용하여 보안 정책을 선택합니다.
-
기본 정책인 ELBSecurityPolicy-2016-08을 유지하고 변경 사항 저장을 선택합니다.
-
기본값 이외의 사전 정의된 정책을 선택하고, 변경 사항 저장을 선택합니다.
-
사용자 지정을 선택하고 아래와 같이 한 개 이상의 프로토콜과 한 개의 암호를 활성화합니다.
-
[SSL Protocols]에서 활성화할 프로토콜을 한 개 이상 선택합니다.
-
[SSL 옵션(SSL Options)]에서 [서버 순서 기본 설정(Server Order Preference)]을 선택하여 SSL 협상 시 Classic Load Balancer에 대해 미리 정의된 SSL 보안 정책에 나열된 순서를 사용합니다.
-
[SSL Ciphers]에서 활성화할 암호를 한 개 이상 선택합니다. SSL 인증서가 이미 있는 경우에는 인증서를 생성하는 데 사용된 암호를 반드시 활성화해야 합니다. DSA 및 RSA 암호는 서명 알고리즘마다 고유하기 때문입니다.
-
변경 사항 저장을 선택합니다.
-
-
를 사용하여 SSL 협상 구성 업데이트 AWS CLI
기본적인 사전 정의 보안 정책인 ELBSecurityPolicy-2016-08, 다른 사전 정의 보안 정책 또는 사용자 지정 보안 정책을 사용할 수 있습니다.
(선택 사항) 사전 정의된 SSL 보안 정책을 사용하려면
-
Elastic Load Balancing이 제공하는 사전 정의 보안 정책의 목록을 보려면 아래 describe-load-balancer-policies 명령을 사용하세요. 사용 중인 운영 체제와 셸에 따라 사용하는 구문도 달라집니다.
Linux
aws elb describe-load-balancer-policies --query 'PolicyDescriptions[?PolicyTypeName==`SSLNegotiationPolicyType`].{PolicyName:PolicyName}' --output tableWindows
aws elb describe-load-balancer-policies --query "PolicyDescriptions[?PolicyTypeName==`SSLNegotiationPolicyType`].{PolicyName:PolicyName}" --output table다음은 예제 출력입니다.
------------------------------------------ | DescribeLoadBalancerPolicies | +----------------------------------------+ | PolicyName | +----------------------------------------+ | ELBSecurityPolicy-2016-08 | | ELBSecurityPolicy-TLS-1-2-2017-01 | | ELBSecurityPolicy-TLS-1-1-2017-01 | | ELBSecurityPolicy-2015-05 | | ELBSecurityPolicy-2015-03 | | ELBSecurityPolicy-2015-02 | | ELBSecurityPolicy-2014-10 | | ELBSecurityPolicy-2014-01 | | ELBSecurityPolicy-2011-08 | | ELBSample-ELBDefaultCipherPolicy | | ELBSample-OpenSSLDefaultCipherPolicy | +----------------------------------------+정책에 어떤 암호가 활성화되어 있는지 확인하려면 아래 명령을 사용하십시오.
aws elb describe-load-balancer-policies --policy-namesELBSecurityPolicy-2016-08--output table사전 정의 보안 정책을 위한 구성에 대한 자세한 내용은 Classic Load Balancer에 대해 미리 정의된 SSL 보안 정책를 참조하십시오.
-
이전 단계에서 설명한 사전 정의 보안 정책 중 하나를 사용하여 SSL 협상 정책을 생성하려면 아래 create-load-balancer-policy 명령을 사용하세요. 예를 들어 아래 명령은 기본적인 사전 정의 보안 정책을 사용합니다.
aws elb create-load-balancer-policy --load-balancer-namemy-loadbalancer--policy-namemy-SSLNegotiation-policy--policy-type-name SSLNegotiationPolicyType --policy-attributes AttributeName=Reference-Security-Policy,AttributeValue=ELBSecurityPolicy-2016-08로드 밸런서에 대한 정책 수의 한도를 초과한 경우 delete-load-balancer-policy 명령을 사용하여 사용하지 않는 정책을 삭제하세요.
-
(선택 사항) 정책이 생성되었는지 확인하려면 아래 describe-load-balancer-policies 명령을 사용하세요.
aws elb describe-load-balancer-policies --load-balancer-namemy-loadbalancer--policy-namemy-SSLNegotiation-policy이 요청에는 정책에 대한 설명이 포함되어 있습니다.
-
로드 밸런서 포트 443에서 정책을 활성화하려면 아래 set-load-balancer-policies-of-listener 명령을 사용하세요.
aws elb set-load-balancer-policies-of-listener --load-balancer-namemy-loadbalancer--load-balancer-port 443 --policy-namesmy-SSLNegotiation-policy참고
set-load-balancer-policies-of-listener명령은 지정된 로드 밸런서 포트에 대한 현재 정책 세트를 지정된 정책 세트로 교체합니다.--policy-names목록에는 활성화할 모든 정책이 반드시 포함되어 있어야 합니다. 현재 활성화된 정책을 누락하면 이 정책은 비활성화됩니다. -
(선택 사항) 새로운 정책이 로드 밸런서 포트에서 활성화되었는지 확인하려면 아래 describe-load-balancers 명령을 사용하세요.
aws elb describe-load-balancers --load-balancer-namemy-loadbalancer다음은 포트 443에서 정책이 활성화되었음을 보여주는 응답의 예입니다.
... { "Listener": { "InstancePort": 443, "SSLCertificateId": "ARN", "LoadBalancerPort": 443, "Protocol": "HTTPS", "InstanceProtocol": "HTTPS" }, "PolicyNames": [ "my-SSLNegotiation-policy" ] } ...
사용자 지정 보안 정책을 생성할 때는 한 개 이상의 프로토콜과 한 개의 암호를 반드시 활성화해야 합니다. DSA 및 RSA 암호는 SSL 인증서를 생성하는 데 사용되는 서명 알고리즘마다 고유합니다. 이미 SSL 인증서를 가지고 있는 경우에는 인증서 생성에 사용된 암호를 반드시 활성화하십시오. 사용자 지정 정책의 이름은 ELBSecurityPolicy- 또는 ELBSample-로 시작할 수 없습니다. 이러한 접두사는 사전 정의 보안 정책의 이름으로 예약되어 있습니다.
사용자 지정 SSL 보안 정책을 사용하려면
-
사용자 지정 보안 정책을 사용하여 SSL 협상 정책을 생성하려면 create-load-balancer-policy 명령을 사용하세요. 다음 예를 참조하십시오.
aws elb create-load-balancer-policy --load-balancer-namemy-loadbalancer--policy-namemy-SSLNegotiation-policy--policy-type-name SSLNegotiationPolicyType --policy-attributes AttributeName=Protocol-TLSv1.2,AttributeValue=true AttributeName=Protocol-TLSv1.1,AttributeValue=true AttributeName=DHE-RSA-AES256-SHA256,AttributeValue=true AttributeName=Server-Defined-Cipher-Order,AttributeValue=true로드 밸런서에 대한 정책 수의 한도를 초과한 경우 delete-load-balancer-policy 명령을 사용하여 사용하지 않는 정책을 삭제하세요.
-
(선택 사항) 정책이 생성되었는지 확인하려면 아래 describe-load-balancer-policies 명령을 사용하세요.
aws elb describe-load-balancer-policies --load-balancer-namemy-loadbalancer--policy-namemy-SSLNegotiation-policy이 요청에는 정책에 대한 설명이 포함되어 있습니다.
-
로드 밸런서 포트 443에서 정책을 활성화하려면 아래 set-load-balancer-policies-of-listener 명령을 사용하세요.
aws elb set-load-balancer-policies-of-listener --load-balancer-namemy-loadbalancer--load-balancer-port 443 --policy-namesmy-SSLNegotiation-policy참고
set-load-balancer-policies-of-listener명령은 지정된 로드 밸런서 포트에 대한 현재 정책 세트를 지정된 정책 세트로 교체합니다.--policy-names목록에는 활성화할 모든 정책이 반드시 포함되어 있어야 합니다. 현재 활성화된 정책을 누락하면 이 정책은 비활성화됩니다. -
(선택 사항) 새로운 정책이 로드 밸런서 포트에서 활성화되었는지 확인하려면 아래 describe-load-balancers 명령을 사용하세요.
aws elb describe-load-balancers --load-balancer-namemy-loadbalancer다음은 포트 443에서 정책이 활성화되었음을 보여주는 응답의 예입니다.
... { "Listener": { "InstancePort": 443, "SSLCertificateId": "ARN", "LoadBalancerPort": 443, "Protocol": "HTTPS", "InstanceProtocol": "HTTPS" }, "PolicyNames": [ "my-SSLNegotiation-policy" ] } ...