설명
로드 밸런서의 TLS 리스너가 구식 프로토콜이나 약한 암호군을 허용하면 클라이언트 연결의 보호 수준이 낮아지고 요구되는 보안 기준을 충족하지 못할 수 있습니다. 실제 허용 범위는 리스너에 적용한 보안 정책에 달려 있습니다.
SslPolicy는 프로토콜 이름이 아니라 AWS 보안 정책 이름입니다. ALB의 HTTPS와 NLB의 TLS 등 실제 리스너 유형에 맞는 정책을 선택하고, TLS가 다른 곳에서 종료되는 연결은 해당 구간도 확인하세요.
잠재적 영향
- 허용된 약한 연결 방식으로 인해 통신 보호가 약해질 수 있습니다.
- 보안 요구사항 위반이나 클라이언트 연결 실패가 발생할 수 있습니다.
해결 방법
로드 밸런서와 리스너가 지원하는 보안 정책 중 필요한 TLS 버전과 암호군만 허용하는 정책을 선택하세요. TLS를 종료하는 리스너에는 유효한 인증서를 구성하고 클라이언트 호환성과 실제 협상 결과를 시험하세요. 민감한 통신의 다른 구간도 별도로 보호하세요.
예시
ALB HTTPS 리스너의 보안 정책을 비교합니다. 보안 그룹·서브넷·대상 그룹과 certificate_arn은 실제 환경에 맞게 제공하세요. 정책 변경 전에 사용하는 클라이언트가 지원하는 TLS 버전을 확인하세요.
변경 전
yaml
- name: ALB 생성
community.aws.elb_application_lb:
name: myelb
security_groups:
- sg-12345678
subnets:
- subnet-012345678
- subnet-abcdef000
listeners:
- Protocol: HTTPS
Port: 443
SslPolicy: ELBSecurityPolicy-2016-08
Certificates:
- CertificateArn: "{{ certificate_arn }}"
DefaultActions:
- Type: forward
TargetGroupName: app-tg
state: present
ELBSecurityPolicy-2016-08은 TLS 1.0과 1.1도 허용합니다. 이 버전들을 금지해야 하는 환경의 요구사항에는 맞지 않습니다.
변경 후
yaml
- name: ALB 생성
community.aws.elb_application_lb:
name: myelb
security_groups:
- sg-12345678
subnets:
- subnet-012345678
- subnet-abcdef000
listeners:
- Protocol: HTTPS
Port: 443
SslPolicy: ELBSecurityPolicy-TLS13-1-2-2021-06
Certificates:
- CertificateArn: "{{ certificate_arn }}"
DefaultActions:
- Type: forward
TargetGroupName: app-tg
state: present
ELBSecurityPolicy-TLS13-1-2-2021-06은 TLS 1.2와 1.3을 사용하도록 제한합니다. 인증서와 클라이언트가 정책에 맞는지도 확인하세요.