AWS EC2 + 개인 도메인 + HTTPS

JOO·2022년 1월 4일
1

실전프로젝트

목록 보기
6/12

AWS EC2 + 개인 도메인 + HTTPS

이번 프로젝트에서 보안을 위해 HTTPS를 적용하기로 했다. 아직 프로젝트에 사용할 도메인을 구매하지 않았지만, 개인적으로 갖고 있는 도메인으로 HTTPS 연결 테스트를 해봤다.

1. 개인 도메인 구입

먼저 개인 도메인이 필요하다. 나는 개인적으로 갖고 있던 도메인으로 사용했지만, 만약 도메인이 없다면 가비아와 같은 도메인 서비스 사이트에서 구매할 수 있다.
https://www.gabia.com/

2. AWS Route53

일단 EC2 인스턴스는 이미 존재한다고 가정하면 먼저 Route53에 접속한다.

호스팅 영역 -> 호스팅 영역 생성의 순서로 클릭 한 후 아래와 같은 화면에서 구입한 도메인을 입력하고 넘어간다.

아래 보이는 화면에서 NS항목들을 가비아 도메인 네임서버에 추가해준다.

그리고 레코드 생성 버튼을 클릭한다. 여기서는 '값'항목에 EC2 인스턴스에서 나오는 IP주소를 넣어주면 된다.

3. AWS Certificate Manager

그리고 인증서를 발급받으로 Certificate Manager 메뉴로 들어간다.
요청 -> 퍼블릭 -> 도메인이름 추가 -> 나머지 기본값으로 완료.

이런 순서로 진행하면 되는데 도메인 이름을 추가할 때 도메인 앞에 '*' 를 붙여준다.

그리고 해당 인증서 클릭한 후 Route 53에서 레코드 생성 버튼을 클릭한다.

4. AWS Load balancer

다음은 로드밸런서를 작성해준다. EC2 페이지로 넘어와서 왼쪽 메뉴바를 보면 로드밸런서 항목이 있다. 아래와 같은 항목을 클릭해준다.

  • Schema : internet Interfacing
  • IP address type : ipv4
  • Network Mapping : 모두 선택한다.
  • Security Group : default와 EC2 인스턴스에서 사용하는 보안그룹을 선택한다.
  • Listner and Routing : 타깃 그룹을 만들고, HTTP와 HTTPS를 둘다 선택한다.
  • Security Listner : 전에 발행했던 인증서를 선택한다.

5. AWS Route53

다시 Route53으로 와서 아래와 같은 레코드를 생성해준다.

이렇게 진행하면 자동으로 HTTPS연결이 완료된다. 만약 HTTP로 접속해도 HTTPS로 리디렉션되게 하고 싶다면 로드밸런서 항목에 리스너에 들어가서 기존 HTTP 항목을 지워주고 리디렉션으로 만들어주면 된다.

아래와 같이 작성해주면 된다.

끝!

profile
개발공부 기록

1개의 댓글

comment-user-thumbnail
2022년 11월 14일
  1. AWS Load balancer여기에서 Listner and Routing : 타깃 그룹을 만들고, HTTP와 HTTPS를 둘다 선택한다.
    이부분 좀더 세부적으로 알수있을까요?ㅜㅜㅜㅜ
답글 달기