[AWS] EC2 서버 도메인 적용기(Route53 + Cloudfront)

주형(Jureamer)·2022년 12월 6일
0

0. 개요

예전에 진행했던 팀 프로젝트는 팀원끼리 클라이언트, 서버 도메인을 별도로 구매해서 사용했는데 프로젝트가 끝난 이후에 관리가 힘들어 제가 새로 도메인을 구매하여 실습해보기로 했습니다.

도메인 구매는 가비아에서, 그 외에 도메인 관련은 모두 AWS에서 진행했습니다.
진행한 순서는 아래와 같습니다.

1. 도메인 구매(가비아)
2. Route53 호스팅 영역 생성
3. Cloudfront 등록
4. SSL 등록


1. 도메인 구매

호스팅 업체를 선정하여 도메인을 먼저 구매해줍니다.
저는 가비아를 선택했고 1년 기간 한정으로 도메인당 5,000원 이하의 가격으로 구매할 수 있었습니다.

2. Route53 호스팅 영역 생성

이후 Route53에서 호스팅 영역을 생성해줍니다.

이후 NS(네임서버)를 복사하여 호스팅 업체에 등록해줍니다.

가비아 기준으로는 전체도메인 > 해당 도메인 상세 페이지에서 변경할 수 있습니다.

3. Cloudfront 등록

이후 Cloudfront에 도메인을 등록해줍니다.
클라이언트는 S3 Bucket의 퍼블릭 액세스 경로를 등록하면 되지만
서버(여기선 EC2)의 경우 LoadBalancer를 먼저 등록 해줘야합니다.


ALB(Application Load Balancer) 등록
ALB는 OSI 계층 중 가장 최상층 계층에 해당하는 Application Layer의 HTTP 메소드 등을 활용하는 로드밸런서입니다.

EC2 메뉴에서 타겟그룹을 먼저 생성해준 뒤

해당 그룹에 아래와 같이 ALB를 생성해줍니다.


CloudFront 배포 등록

이후 CloudFront 배포를 생성하면 미리 만들어둔 ALB가 보입니다.

해당 로드밸런서로 배포를 하게 되면 아래와 같이 도메인 이름이 생성된 것을 확인할 수 있습니다.

4. Route53 레코드 생성

이후 route53의 등록된 호스팅 영역에 들어간 뒤 레코드 생성버튼을 클릭합니다.

레코드 유형은 A, Application Load Balancer에 대한 별칭으로 등록된 로드밸런서를 선택한 뒤 레코드를 생성해줍니다.

5. SSL 등록

마지막으로 HTTPS를 사용해야한다고하면 SSL 등록을 해야합니다.
특히나 클라이언트가 HTTPS로 구성되어있다면 서버도 HTTPS로 등록이 되어야
HTTP 메소드(GET, POST...) 사용이 가능합니다.

SSL 등록을 하기 위해선 ACM(AWS Certificate Manager)에서 아래와 같이 인증서를 요청합니다.

검증 방법은 DNS 검증이메일 검증이 있는데 Route53이 등록되어 DNS 검증이 수월합니다.

등록한 뒤 Route53에서 레코드 생성 버튼을 누른 뒤 CNAME으로 생성하면 얼마 후 발급이 완료된 걸 확인할 수 있습니다.

이후 해당 도메인으로 들어갔을 때 Response가 오면 정상적으로 등록된 것을 확인할 수 있습니다.

참고

profile
작게라도 꾸준히 성장하는게 목표입니다.

0개의 댓글