AWS EC2 - https 연결 (가비아)

정태수·2023년 7월 21일
0
post-thumbnail

본인이 배포한 사이트의 도메인이 그저 ip와 포트가 적힌 모습이 아닌 원하는 이름으로 배포된 모습을 보면 더욱 뿌듯할 겁니다.

오늘은 가비아와 AWS EC2 이용해서 https 연결까지 해보겠습니다.

준비물

  1. 가비아에서 구매한 도메인
  2. aws EC2 인스턴스

이 글에선 가비아 회원가입, aws 인스턴스 생성등을 다루진 않을 겁니다.

보안규칙

EC2의 보안규칙을 만들어주어야 합니다.

3000: 본인이 사용할 포트넘버 (배포된 프로젝트도 같은 포트 사용해야합니다.)
443: 리다이렉션시 필요함
22: 기본값

완료하셨으면

호스팅 영역 생성

<웹 상단에서 검색창에 route53을 검색하세요>
route 53 -> 호스팅 영역 생성

도메인 이름만 채워주고 생성하시면 됩니다.

생성 이후 만든 호스팅 영역에 들어가보시면 유형에서 NS라는 레코드가 생겼을 겁니다.

값/트래픽 라우팅 대상에 총 4개의 값이 보일 텐데요.
하나씩 복사해서

네임서버

가비아 -> 도메인 통합 관리툴 -> 도메인 정보 변경 -> 네임서버
누르시면 1차 2차 3차 4차 적을수 있는 호스트명이 보입니다.

복사해주시면 됩니다.

ACM - AWS certificate manager

검색창에 certificate manager라고 치시고 요청 누르시면 됩니다.

퍼블릭 인증서 요청 -> 완전지 정규화된 도메인 이름
여기에 본인이 구입한 도메인을 적으시면 됩니다.

요청을 누르면 생성이 될텐데 생성된 도메인 이름을 한번더 클릭하면

route 53에서 레코드 생성 이라는 버튼이 보일겁니다.

누르시고 요청을 하시면 조금만 기다리시면 인증서 발급이 완료됩니다.

cname

인증서가 발급되면 route 53으로 다시 돌아가셔서 생성한 레코드를 확인해보면 cname이라는 레코드가 새롭게 추가되었을겁니다.

cname의 이름과 값/트래픽 라우팅 대상 값이 필요합니다.

이때 주의할점 밑에 사진 참고해주세요

레코드 이름에서 ".도메인주소" 부분은 생략하여 복사할 것


<타 사이트에서 퍼온 그림>

복사했다면 my 가비아 -> DNS 관리툴 -> DNS 설정

타입: cname
호스트: 레코드 이름
값/위치: 값/트래픽 라우팅 대상

입력 후 저장 하시면 됩니다.

로드 밸런싱 대상 그룹 생성

ec2 -> 로드 밸런싱 -> 대상 그룹 생성

대상 그룹 이름 작성

방금 만든 타겟 그룹에 요청을 처리한 ec2 인스턴스를 추가하고 해당 인스턴스의 어떤 port로 요청을 라우팅할 건지 정하는 것이다.

아래에 보류중인 것으로 포함버튼을 누르면 밑에 추가된다.

실제로 저는 사용하는 3000번 과 443을 추가해주었는데
443을 왜 추가하는지는 아직 지식이 부족합니다.

https://pajamacoder.tistory.com/68
이 블로그에 설명이 되어있는데 이해하기 어렵네요

쨋든 443과 3000번 추가해줬다면 그룹 생성하면 됩니다.

application Load Balancer 선택

이름 지어주고 네트워크 매핑에서 본인 지역에 대해 4가지 선택지가 나오게 됩니다.

다른 블로그들 보면 다 선택하거나, ad 만 선택하거나 이런 글이 있는데 가장 정확한건 본인이 사용하고 있는 ec2가 어떤 지역에서 사용되고 있는지가 가장 중요합니다.

ec2 가셔서 꼭 인스턴스가 어떤 가용 영역에 있느지 확인하시고 체크하시기 바랍니다.

보안그룹은 디폴트 + 인스턴스가 사용중인 보안그룹을 체크해주시면 됩니다.

사용할 포트는 http로 리스너 추가
443 포트는 https로 리스너 추가

로드 밸런서 생성

이후 생성한 로드밸런서의 리스너에서 http:3000 선택 후 편집

리디렉션

반드시 리디렉션을 꼭 확인해주세요 (리디렉션 선택이 안된다면 기본 작업에서 나와있는 항목을 제거 하고 다시 리디렉션 선택을 해주세요)

HTTPS 443 으로 리디렉션을 지정해주면

http:3000이 443으로 리디렉션 대상이 된것을 볼수 있습니다.

A유형 레코드 편집

route 53을 되돌아가서 도메인 이름 클릭

레코드 생성

트래픽 라우팅 대상
1. 화면과 동일
2. 인스턴스가 위치한 지역
3. 아까 생성한 로드 밸런서

이렇게 설정하고 저장해주면 됩니다.

https 연결이 잘 된것을 확인할수 있습니다.

웹사이트 환경에 따라 약간의 시간이 소요될수 있어요!

profile
프론트엔드 개발자

0개의 댓글