[AWS] Route53과 ELB를 이용해 https적용하기

su_y2on·2022년 1월 5일
0

AWS

목록 보기
1/1
post-thumbnail

로드밸런서

AWS에서는 여러 로드밸런서를 제공하는데요 그중에 https를 위해 사용할 로드밸런서는 http와 https 트래픽을 사용하는 웹어플리케이션을 위한 ALB(Application Load Balancer)입니다.


ALB는 서버와 사용자 사이에 전달자(프록시 서버)라고 보시면 쉽습니다
따라서 사용자와 ALB가 먼저 연결을하고 ALB와 서버가 연결을 한뒤에 사용자와 서버 사이에 통신을 ALB가 중간에서 전달해주는 방식으로 진행됩니다. 이때 ssl인증서를 ALB에 넣으면 https를 사용할 수 있습니다




들어가기에 앞서 ACM발급과 그에 따른 사설도메인과 Route53 호스팅영역이 생성되어있어야합니다

https 적용하기 : 로드밸런서

먼저 AWS EC2의 로드밸런서 메뉴에서 로드밸런서 생성을 눌러주고 type은 첫번째 ALB로 선택합니다

고칠 부분들만 말씀드리자면
Network mapping에서 2a,b,c,d이렇게 4개가 있는데 이중 2개이상을 선택해주시면 됩니다
필수로 들어가야하는 것은 subnet이 연결하려는 ec2서버의 subnet과 일치하는(ec2 인스턴스 정보에서 보실 수 있어요) network입니다 나머지는 아무거나 추가해주세요

보안그룹은 연결할 ec2와 같은 것으로 선택해줍니다

리스너는 추가를 이용해서 80, 443포트를 각각 만들어주세요
그리고 두 리스너 모두 타겟그룹(어디로 넘길지)을 80포트로 설정해줘야하기 때문에 그에 맞는 target group을 만들어줘야합니다

타겟그룹만들기에서 health check부분에 path를 메인페이지나 admin페이지로 설정해주세요 default는 루트(/)로 되어있지만 만약 루트 path에 view가 없다면 health check(서버가 죽었는지 살았는지..)가 제대로 되지 않습니다.

다음으로 register targets에 사용할 ec2인스턴스를 선택한 뒤 완료해주세요

이렇게까지 하면 ALB생성 페이지에서 두 리스너에 방금 만든 target group을 선택해주면 됩니다
마지막으로 443포트를 위한 SSL인증서를 만들어둔 ACM으로 선택하면됩니다

https 적용하기 : Route53

일정시간이 지나면 ALB가 생성이 됩니다 그리고 그에 따른 DNS주소도 할당됩니다 이제 더이상 ec2 DNS주소나 ip를 이용해서 접속하면 ALB를 거치는 것이 아니므로 이 DNS를 이용해서 접속해야합니다 이제는 ACM을 발급받을때 등록했던 사설 도메인(~.com, ~.shop)과 ALB의 DNS주소를 연결해줍시다!

Route53에 들어가서 만들어놨던 호스팅영역을 선택하고 타입 A레코드를 수저해줍니다
트래픽 라우팅 대상을 ALB DNS와 같은것으로 선택해줍니다 (dualstack은 다 붙는 것 같아요)
그리고 저장을 누르면 끝입니다

마지막으로 "https://사설도메인" 로 접속이 잘 되는지 확인해보시면 됩니다!

0개의 댓글