728x90
시나리오
전세계를 대상으로 웹 서비스를 제공하고 있는 기업에서 CF를 CDN으로 사용하고, 백엔드 서버는 ALB 뒤에 존재합니다.
사용자는 CF 사용자 지정 도메인으로 service.example.com을 사용하며, CF origin은 service-alb.example을 도메인으로 사용하는 ALB입니다.
기업의 보안 정책에 따라, 사용자와 백엔드 간의 전송되는 모든 트래픽은 암호화되어야합니다.
딱히 복잡하지 않은 시나리오이다. 사용자 -> CF, CF -> ALB, ALB -> EC2 간의 통신이 모두 SSL/TLS로 요청을 전송하도록 구성하면된다.
User -> CF간 전송 암호화
CF로 들어오는 요청은 ACM을 사용하여 service.example.com에 대한 인증서를 생성하고, 이 사용자 지정 인증서를 사용하도록 CF를 구성하면 된다. 또한 반드시 암호화되어야하므로 HTTP요청을 HTTPS로 리디렉트하도록 기본 동작을 변경한다.
CF -> ALB간 전송 암호화
AWS Certificate Manager(ACM)를 사용하여 service-alb.example.com에 대한 인증서를 생성한다. ALB에서 새 대상 그룹과 service-alb.example.com ACM 인증서를 사용하는 새 HTTPS 수신기를 추가하고 HTTPS 프로토콜만 사용하도록 CloudFront 오리진을 수정한 뒤, ALB에서 HTTP 수신기를 삭제합니다.
ALB -> EC2간 전송 암호화
EC2 인스턴스에 대한 도메인 이름을 사용하여 타사 인증서 공급자로부터 공개 인증서를 생성한 뒤, HTTPS 수신기에 대해 이 인증서를 사용하도록 백엔드를 구성한다. 또한 HTTPS 프로토콜을 사용하도록 대상 그룹을 구성한다.
클플에서 한 번씩 읽고 사용해봤을 법한 시나리오이기에 이해하는 데에는 그리 어렵지 않을 것이다.
'DevOps > AWS' 카테고리의 다른 글
AWS-Routing-Table-State-with-IGW-goes-Block-Hole (0) | 2023.06.10 |
---|---|
Amazon-DNS-서버 (0) | 2023.06.10 |
S3-버킷-정책을-통해-특정-웹사이트의-S3-access-허용 (0) | 2023.06.10 |
AWS-Organizations란 (0) | 2023.06.10 |
S3 File Upload PresignedUrl로 처리 (0) | 2023.06.10 |