본문 바로가기

자격증/AWS Certified Security - Specialty

[AWS SCS] ELB SSL 인증서 보안

728x90
반응형

Elastic Load Balancer(ELB)에서 SSL/TLS 암호화 설정하기

이번 포스팅에서는 AWS Elastic Load Balancer(ELB)에서 SSL/TLS 인증서를 활용한 암호화를 설정하는 방법과 관련된 개념을 정리해 보겠습니다.


1. SSL/TLS 암호화란?

**SSL(Secure Sockets Layer)**과 **TLS(Transport Layer Security)**는 클라이언트와 서버 간 데이터를 암호화하여 안전하게 전송하는 프로토콜입니다.

  • SSL은 이전 버전으로, 현재는 TLS가 주로 사용됩니다.
  • 보통 SSL/TLS 인증서는 클라이언트와 서버 간 **전송 중 암호화(In-flight Encryption)**를 제공합니다.

2. ELB에서 SSL/TLS 암호화 흐름

ELB를 통해 HTTPS 연결을 설정할 때의 기본적인 구조는 다음과 같습니다:

  1. 클라이언트 ↔ ELB: HTTPS를 통해 암호화된 트래픽 전달.
  2. ELB ↔ EC2: 내부 VPC 네트워크를 통해 HTTP(암호화되지 않음)로 트래픽 전달.

이를 설정하기 위해 ELB에 SSL/TLS 인증서를 로드해야 하며, AWS에서는 **AWS Certificate Manager(ACM)**를 통해 인증서를 관리합니다.


3. HTTPS 리스너 구성

HTTPS 리스너 설정 시 다음을 지정해야 합니다:

  1. 기본 인증서: 하나의 인증서를 반드시 설정해야 함.
  2. 추가 인증서: 여러 도메인을 지원하려면 추가 인증서를 설정 가능.
  3. 보안 정책(Security Policy): SSL/TLS 프로토콜, 암호화 방식, 서버 우선순위 설정.

4. SNI(Server Name Indication)란?

**SNI(Server Name Indication)**는 하나의 로드 밸런서에서 여러 SSL/TLS 인증서를 로드하여 여러 도메인/웹사이트를 지원할 수 있도록 하는 기능입니다.

SNI의 동작 원리

  • 클라이언트가 요청 시 **호스트명(도메인명)**을 전달합니다.
  • 로드 밸런서는 전달받은 호스트명에 맞는 인증서를 선택하여 암호화 연결을 설정합니다.

지원하는 로드 밸런서

  • **ALB(Application Load Balancer)**와 **NLB(Network Load Balancer)**는 SNI를 지원하며, 여러 인증서를 쉽게 관리할 수 있습니다.
  • **CLB(Classic Load Balancer)**는 SNI를 지원하지 않아 단일 인증서만 사용 가능합니다.

5. SSL/TLS 보안 정책(Security Policy)

SSL/TLS 보안 정책은 다음과 같은 요소로 구성됩니다:

  1. SSL/TLS 프로토콜 버전: 지원할 프로토콜의 범위.
  2. 암호화 방식(Cipher): 클라이언트와 서버 간 데이터를 암호화하는 알고리즘.
  3. 서버 우선순위(Server Order Preference): 암호화 방식 협상 시 서버가 우선순위를 정하도록 설정.

보안 정책 종류

  • 기본 정책: AWS에서 제공하는 기본 보안 정책(예: ELBSecurityPolicy-2016-08).
  • TLS 정책: 특정 TLS 버전을 사용하여 내부 규정을 충족.
  • FS 정책(Forward Secrecy): 임의의 세션 키를 통해 암호화된 데이터 도청 방지.

6. CLB, ALB, NLB의 SSL 인증서 관리 비교

CLB 단일 인증서만 지원. 다중 도메인은 SAN(Subject Alternate Name) 인증서로 관리.
ALB 다중 인증서 및 리스너 지원. SNI로 여러 도메인 처리 가능.
NLB 다중 인증서 및 리스너 지원. SNI로 여러 도메인 처리 가능.

 


7. Forward Secrecy란?

Forward Secrecy는 SSL/TLS 협상 시 고유한 임의 세션 키를 생성하여 암호화된 데이터를 보호하는 방식입니다.

  • 이를 통해 도청 및 복호화를 방지할 수 있습니다.
  • ALB 및 NLB에서 특정 FS 보안 정책을 적용하여 활성화할 수 있습니다.

마무리

ELB에서 SSL/TLS 암호화를 설정하면 사용자와 서버 간 데이터를 안전하게 전송할 수 있습니다. 특히, 최신 로드 밸런서(ALB/NLB)와 SNI 기능을 활용하면 다중 도메인과 인증서 관리가 더욱 간단해집니다.

728x90
반응형