-
[AWS] 우리는 왜 CloudFront 와 로드밸런서에 SSL(TLS)을 달아야하는가?Back End/AWS 2022. 6. 5. 22:44
Prerequisite - Network Sniffing
HTTPS 는 네트워크 스니핑을 막기 위해 만들어졌다.
네트워크 스니핑(Network Sniffing)이란 네트워크(전선)를 타고 흐르는 데이터(패킷)들을 탈취하는 것을 말한다.
스니핑을 하기 위해 네트워크 스니퍼라는 응용프로그램을 만드는데
이러한 프로그램으로 해당 컴퓨터로 들어오고 나가는 패킷을 가질 수 있다.
라우터도 작은 컴퓨터니 라우터에 설치할 수도 있을 것이고, 해당 라우터에 연결된 PC에 설치할 수도 있다.Prerequisite - HTTPS
HTTPS 와 HTTP 는 네트워크(전선)를 타고 흐르는 데이터를 암호화 하느냐 안하느냐의 차이다.
물론 HTTPS 또한 SSL MITM 라는 기법으로 스니핑 할 수 있다.
(가짜인증서로 데이터를 암호화한다. 해커는 해당 가짜인증서로 복호화할 수 있다.)
하지만, 사용자가 경고메세지를 무시하고 허용하지 않는 이상
주고 받는 데이터는 인증된 인증서로 암호/복호화 할 수 있는 데이터로 암호화 된다.우리는 왜 CloudFront 와 로드밸런서에 SSL(TLS)을 달아야하는가? (1)
이러한 데이터(패킷)들이 탈취되더라도 데이터를 못 알아보게 하기 위함이다.
정확히 말하자면, CloudFront 와 LB(로드밸런서)에 SSL 을 적용하는게 아니라
Client ↔ CloudFront 에 SSL 을 적용하고
CloudFront ↔ LB 에 SSL 을 적용하는 것이다.왜 LB ↔ EC2 에는 SSL 을 달지 않을까?
LB 와 EC2 는 보통 같은 VPC 안에 둔다.
아마존에서 관리하는 네트워크 영역이기 때문에
아마존에 물리적으로 침투해서 아마존 컴퓨터에 연결된 라우터에
스니퍼를 설치하지 않는 이상 안전하기 때문이다.
아마존을 믿고 쓰는 것이다.우리는 왜 CloudFront 와 로드밸런서에 SSL(TLS)을 달아야하는가? (2)
CloudFront 가 엣지로케이션에 위치하기 때문에,
Client(VPC 외부) ↔ CloudFront(VPC 외부) ↔ LB(VPC) 의 통신은 모두 암호화해야하는 것이다.
CloudFront ↔ LB 간의 통신 또한 여러 라우터를 거쳐서 도달할 테니 말이다.
# Reference
728x90'Back End > AWS' 카테고리의 다른 글
[AWS] Java 프로젝트에서 .ebextensions 사용하기 (0) 2022.09.17 [AWS] Permission denied (publickey,gssapi-keyex,gssapi-with-mic) (0) 2022.08.28 [AWS] Mac 에서 EC2 인스턴스로 SSH 접속 (0) 2022.05.05 [AWS] EC2 에서 개인 PC(Local)로 파일 전송 (0) 2022.05.05 [AWS] Could not connect to eu-west-1.ec2.archive.ubuntu.com:80 (54.229.116.227), connection timed out 해결법 (0) 2022.04.29