[AWS] EC2 도메인 연결 및 HTTPS 적용하기

 

EC2 도메인 연결

&

EC2 HTTPS 적용



안녕하세요 오늘은 AWS EC2에 도메인을 연결하고 HTTPS까지 적용해보는 시간을 갖도록 하겠습니다.

 


이 글은 이전에 생성한EC2가 이미 있다는 가정하

HTTPS와 도메인 연결만을 설명하는 게시글임을 참고 부탁드리겠습니다.


 


사용할 재료


이번 시간에서 사용할 재료는 AWS의

Route53, Certification Manager, EC2

그리고

PuTTY 입니다.




PuTTY가 뭔지 모르신다면 아래 게시글을 참고하시길 바랍니다!

 

[AWS] EC2 배포(2) - PuTTY로 AWS EC2 인스턴스 접속

PuTTY(푸티)란? PuTTY는 가상 단말기 프로그램이다. 서버는 물리적으로 떨어져 있어도 단말 장비를 통해서 원격으로 접속하여 작업할 필요가 있는데, 이때 윈도우같은 개인 pc 운영체제에서도 서버

pgmjun.tistory.com


준비되셨다면 바로 시작해보겠습니다.


 

도메인 연결 및 HTTPS 적용(1)


저는 도메인 생성을 위해 Gabia를 이용하였습니다.

.shop 도메인은 첫 구매시에 1년치를 500원에 구매할 수 있으니 참고하세요!

도메인 연결 및 HTTPS 적용(2)


저는 이렇게 도메인 생성을 완료하였습니다.

도메인 연결 및 HTTPS 적용(3)

 

도메인 생성을 완료했다면 EC2에 접속해서 인바운드 보안 규칙을 설정해야합니다.

 

도메인 연결 및 HTTPS 적용(4)


위와 똑같이 설정해주시면 됩니다.

(RDS를 사용하지 않으시는 분들은 3306 포트는 제외하셔도 괜찮습니다)

 

 

도메인 연결 및 HTTPS 적용(7)

 

이제 본격적으로 Route53에서 호스팅 영역을 설정해주겠습니다.

 

도메인 연결 및 HTTPS 적용(8)

 

호스팅 영역 - 호스팅 영역 생성

 

도메인 연결 및 HTTPS 적용(10)

- 도메인 이름: 구매한 도메인주소 입력
- 설명: 생략
- 유형: 퍼블릭 호스팅 영역
- 태그: 생략

도메인 연결 및 HTTPS 적용(11)

 

생성한 호스팅 영역의 레코드에서
NS유형값/트래픽 라우팅 대상 복사

 

도메인 연결 및 HTTPS 적용(12)

 

다시 가비아에 접속하여

My가비아 - 도메인 통합 관리툴
접속

 

도메인 연결 및 HTTPS 적용(13)

 

도메인 정보 변경 클릭

 

도메인 연결 및 HTTPS 적용(14)


도메인 체크 후 네임서버 클릭

도메인 연결 및 HTTPS 적용(15)

 

1,2,3,4차 네임서버에 좀 전에 복사해 둔

NS유형값/트래픽 라우팅 대상
입력 후 저장

 

도메인 연결 및 HTTPS 적용(16)

 

AWS의 Certification Manager 접속

 

도메인 연결 및 HTTPS 적용(17)

 

인증서 요청

 

도메인 연결 및 HTTPS 적용(18)

 

퍼블릭 인증서 요청 클릭 후 다음

 

도메인 연결 및 HTTPS 적용(19)

 

- 도메인 이름: 구매한 도메인주소 입력
- 검증 방법 선택: DNS 검증
- 태그: 생략

입력 후 요청 클릭

 

도메인 연결 및 HTTPS 적용(20)

 

Route53에 생성한 인증서의 CNAME 레코드를 생성하기 위해

Route 53에서 레코드 생성 클릭

 

 

도메인 연결 및 HTTPS 적용(21)


나는 전에 이미 생성을 하였기 때문에 막혀있지만

처음 생성하는 경우라면 레코드 생성 버튼을 클릭할 수 있다.

레코드 생성을 클릭해서 CNAME 유형의 레코드를 생성해주자

 

도메인 연결 및 HTTPS 적용(22)

 

다시 Route53으로 이동

 

도메인 연결 및 HTTPS 적용(23)

 

생성된 CNAME 유형의 레코드의
레코드 이름 , 값/트래픽 라우팅 대상을 복사


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

 

도메인 연결 및 HTTPS 적용(24)

 

다시 가비아에 접속하여

My가비아 - DNS 관리툴

 

도메인 연결 및 HTTPS 적용(25)

 

DNS 설정 클릭

 

도메인 연결 및 HTTPS 적용(26)


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

입력 후 저장

 

도메인 연결 및 HTTPS 적용(27)

 

설정 후에

EC2 - 로드 밸런싱 - 대상 그룹
접속

 

도메인 연결 및 HTTPS 적용(28)

 

Create target group 클릭

 

도메인 연결 및 HTTPS 적용(29)


- target type: Instances
- Target group name: 자기 맘대로 설정하면 됌

도메인 연결 및 HTTPS 적용(30)

 

나머지 설정은 건들지 않고
Next 클릭

 

도메인 연결 및 HTTPS 적용(31)


80번 포트 입력 후
Include as pending below 클릭

 

도메인 연결 및 HTTPS 적용(32)

 

433번 포트도 똑같이 해준다.

 

도메인 연결 및 HTTPS 적용(33)

 

타겟이 잘 생성되었는 지 확인 후
Create target group 클릭

 

도메인 연결 및 HTTPS 적용(34)
도메인 연결 및 HTTPS 적용(35)


대상 그룹을 생성했으니 다음으로
로드밸런서 생성을 위해

로드 밸런싱 - 로드밸런서- 로드 밸런서 생성 클릭

 

도메인 연결 및 HTTPS 적용(36)

 

Application Load Balancer - Create 선택

 

도메인 연결 및 HTTPS 적용(37)


- Load balancer name: 자기 맘대로 설정하면 됌

- Scheme: Internet-facing
- IP address type: IPv4
- VPC: 생략(건드리지 않기)

 

도메인 연결 및 HTTPS 적용(38)


-Mappings: a타입, c타입 선택

도메인 연결 및 HTTPS 적용(39)

 

Default로 있는 보안그룹은 그대로 두고

추가적으로 결하려하는 EC2와 똑같은 보안그룹을 추가

 

도메인 연결 및 HTTPS 적용(40)

 

HTTP 80번 포트
HTTPS 443번 포트 추가 후
target group좀전에 생성한 대상 그룹(heurit-group)을 입력해준다.

 

도메인 연결 및 HTTPS 적용(41)

 

Security policy: 그대로 두기
Default SSL/TLS certificatie: 처음에 생성한 인증서 입력


(인증서를 생성하는 게 생각보다 오래걸릴 수 있음. 보통 5~30분 내로 생성됌)

 

도메인 연결 및 HTTPS 적용(42)

 

모든 설정을 완료했다면

Create load balancer 클릭

 

도메인 연결 및 HTTPS 적용(43)

 

생성한 로드밸런서의 리스너 클릭 후

HTTP: 80 리스너편집 클릭

 

도메인 연결 및 HTTPS 적용(44)

 

Default actions를 Redirect로 설정 후

HTTPS 443으로 리다이렉트 되도록 위와 같이 설정

 

도메인 연결 및 HTTPS 적용(45)

 

마지막으로 다시 Route 53으로 넘어와 호스팅 영역에서

A유형의 레코드를 생성한다.

- 레코드 이름: 생략
- 레코드 유형: A
- : ec2의 IPv4주소
(탄력적 IP주소로 설정해야 IP가 변하지 않음)

나머지 설정은 생략이므로 바로 레코드 생성 클릭

 

도메인 연결 및 HTTPS 적용(46)

 

생성한 레코드의 체크박스를 선택 후

레코드 편집 클릭

 

도메인 연결 및 HTTPS 적용(47)

 

트래픽 라우팅 대상을 위 사진과 같이 설정한 후 저장해준다.

이렇게하면 모든 설정이 완료되었다.

잠깐동안 서버에 요청을 하면 502 에러가 나타나다가 시간이 조금 지나면

 

도메인 연결 및 HTTPS 적용(48)


이렇게 도메인과 HTTPS 적용이 완료되었음을 확인할 수 있다!

 

이렇게 AWS를 사용하면 생각보다 간단하게 HTTPS 적용과 도메인 연결을 할 수 있다.