이번 포스트에서는 구매한 도메인을 Routh 53을 활용하여 도메인 HTTPS 적용까지 적용한 내용을 기술 하려고 합니다.
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다.
가비아 도메인 구매 및 연결
가비아에서 도메인 구매는 아래 글을 참고 했습니다.
https://this-circle-jeong.tistory.com/179
[Server] 가비아 도메인 구매 및 연결
가비아 페이지에 접속 https://www.gabia.com/ 웹을 넘어 클라우드로. 가비아 그룹웨어부터 멀티클라우드까지 하나의 클라우드 허브 www.gabia.com 도메인 - 도메인 검색 원하는 도메인 주소를 검색 - 선택
this-circle-jeong.tistory.com
구매한 도메인을 AWS Route53 서비스를 통해 주소를 연결하는 방법을 알아보도록 하자.
Route 53
1. AWS Route 53에 접속 - 호스팅 영역 - 호스팅 영역 생성 (호스팅 영역 이름에 구매한 도메인 입력)
2. 레코드 중 유형이 NS인 것을 확인할 수 있는데 거기에서 “값/트래픽 라우팅 대상”이 4개 생긴것을 확인할 수 있음
Gabia
1. My 가비아 -> 서비스 관리 -> 도메인 통합 관리툴
2. 도메인 정보 변경 -> 네임 서버 설정

3. Route 53 레코드의 NS에 해당하는 4개의 값을 차례대로 입력한다. 이 때 마지막에 .은 제외하고 입력한다.
AWS Certificate Manager (ACM)
1. AWS Certificate Manager(ACM)에 접속 후, 퍼블릭 인증서 요청 클릭

2. 완전히 정규화된 도메인 이름에는 구매한 도메인의 이름을 작성한 이후 요청
ex) *. 도메인 주소

3. 생성한 인증서 ID를 클릭 -> Route 53에서 인증서 생성 클릭 -> 아까 생성했던 호스팅 그룹?이 있으면 선택 후 레코드 생성

대략 10분 후에 인증서 발급 완료
AWS Load balancer 적용
1. EC2 - 로드 밸런싱 - 대상 그룹 - 대상 그룹 생성

2. 대상 그룹 생성에 필요한 데이터 입력
대상 그룹 이름에는 자신이 원하는 이름을, 대상 유형은 인스턴스, 포트는 8080으로 설정

프로토콜 버전 설정에 대해 비교한 내용은 다음과 같습니다.
버전 | 전송 방식 | 주요 특징 | 장점 | 단점 |
HTTP/1.1 | TCP | 요청마다 연결 생성, 순차 처리 | 구현 간단, 널리 사용됨 | 느린 속도, 연결 낭비 |
HTTP/2 | TCP | 멀티플렉싱(Multiplexing), 헤더 압축 | 한 연결로 여러 요청 처리 가능 | TCP 기반 → 지연 가능성 |
HTTP/3 | UDP (QUIC) | HTTP/2의 단점 개선, 더 빠른 연결 성능 | 지연 최소화, TLS 기본 포함 | 최신 기술, 지원 미비 가능성 |
gRPC | HTTP/2 위 | 이진 데이터 (Protocol Buffers) 사용 | 빠름, 서비스 간 통신에 최적화 | 브라우저 직접 호출 어려움 |
3. 상태 검사 등록 : 프로토콜 HTTP, 상태 검사 경로 /api/health-check (해당 컨트롤러가 있다는 가정)
4. 생성된 대상 그룹을 누르고 하단에 “대상” 선택 -> 대상 등록 -> 원하는 EC2 인스턴스 선택

인스턴스의 상태가 unhealthy인 경우, 하단의 “상태 검사” 탭 클릭 -> 편집 -> 200을 뱉어내는 임의의 API를 생성한 후 등록합니다
임의의 API 과정은 3번
4. 로드밸런서 탭 클릭 -> 로드밸런서 생성 버튼 클릭
5. 로드 밸런서 유형 Application Load Balancer 선택
6. 로드 밸런서 이름은 원하는 이름으로 선택, 체계는 인터넷 경계(Internet-facing), IP 주소 유형은 IPv4로 선택
7. 매핑에서 가용영역 선택 시 2개 이상 선택하되 반드시 EC2가 있는 가용영역은 포함할 것
** 가용영역 확인하는 방법 - EC2에서 조회
8. 보안그룹은 대상 EC2에서 사용하고 있는 보안그룹 선택 혹은 보안그룹 생성 및 선택(HTTPS, HTTP 둘 다 오픈)
9. 리스너 및 라우팅에서 리스너 추가 (포트 80, 443 추가, 대상 그룹은 생성한 것으로 설정)


10. HTTP로 접속 시, HTTPS로 리다이렉트 되도록 설정
Rout 53 라우팅 설정
1. 레코드 생성 - 단순 라우팅 선택 (빠른 생성 전환으로 되어 있을 수 있음)
2. 루트 도메인 혹은 하위 도메인으로 레코드 이름 설정
단, ACM 과 동일한 도메인 설정이어야 합니다.
항목 | CASE 1: 도메인.dev 루트 도메인 접속 | CASE 2: api.도메인.dev 서브 도메인 접속 |
1. 도메인 유형 | 루트 도메인 (naked domain) | 서브 도메인 |
2. ACM 인증서 | 도메인.dev 또는 *.도메인.dev에 포함되어야 함 | *.도메인.dev로 충분함 (api.도메인.dev 포함됨) |
3. Route 53 레코드 | A 레코드 또는 ALIAS로 도메인.dev → ALB 연결 | A 레코드 또는 ALIAS로 api.도메인.dev → ALB 연결 |
4. ALB 리스너 인증서 | 도메인.dev 포함된 인증서가 등록되어야 함 | *.도메인.dev 인증서만으로 충분 (하위 도메인 포함됨) |
5. 정상 접속 조건 | 인증서와 Route 53 레코드 모두 도메인.dev에 명확히 지정돼야 함 | 하위 도메인이므로 상대적으로 단순, 대부분 자동 처리됨 |
6. 흔한 실수 | *.도메인.dev 인증서만 발급하고 루트 도메인을 포함 안함 | Route 53에 레코드 추가 안 했거나 오타 문제 |
Route 53과 ACM은 프리티어 내에서도 사용할 수 있지만, Route 53의 Hosted Zone에는 월 $0.50의 비용이 발생합니다.
그럼에도 불구하고 많은 사용자들이 Route 53을 선택하는 이유는 무엇일까?
사용 이유 | 설명 |
통합된 AWS 인프라 관리 | Route 53 + ACM + CloudFront + ALB 구성 시 모든 것이 AWS 내에서 자동화되고 통일성 있음 |
ACM 인증서 자동 갱신 | AWS Certificate Manager(ACM) 사용 시 인증서 자동 갱신 가능 (단, ALB/CloudFront에서만 사용 가능) |
고가용성 & 복잡한 트래픽 관리 | 가중 라우팅, 헬스체크, 지역 기반 라우팅 등 고급 DNS 기능 |
DevOps 자동화 | IaC(Terraform/CDK) 등에서 Route 53 리소스와 연동하기 쉬움 |
CloudFront 연동 최적화 | CloudFront에서 맞춤 오리진 도메인을 Route 53에서 쉽게 연결 가능 |
반면, Rout 53 없이 HTTPS 연결은 가비아 도메인 + EC2 + Nignx + 무료 인증서만으로도 충분히 가능합니다.
단, 인증서 갱신은 수동 또는 별도 스크립트를 통한 자동화가 필요합니다.
[참고] Nignx 로 연동 방법
앞에서는 AWS 기반 설정(Route 53 + ACM + ALB)을 중심으로 설명했지만,
꼭 AWS 서비스만 사용하는 건 아닙니다.
직접 EC2에 Nginx를 설치하고 인증서(Let's Encrypt 등)를 적용해 HTTPS 리버스 프록시를 설정하는 방식도 널리 사용되니,
운영 환경이나 예산, 학습 목적에 따라 적절한 방식을 선택하면 됩니다.
[ec2 2탄] 가비아에서 도메인 구매 후 연결하기 & HTTPS 적용하기
https://ye5ni.tistory.com/131 [ec2 1탄] AWS EC2 임대 및 서버 구축해보기 1. AWS EC2 인스턴스 생성 자세한 과정은 밑에서 확인!!! ↓↓↓ 더보기 ✅ AWS(Amazon Web Service) EC2 뽀개기 1. AWS 회원 가입하기 https://ap-no
ye5ni.tistory.com
https://growing-nyang.tistory.com/75
nginx / nginx 환경설정 및 도메인(domain) 변경 방법
도메인 설정을 변경하는 방법을 xshell에서 했던 걸 기록.laravel로 만든 홈페이지를 django로 conversion하면서 도메인을 옮기게되어 이를 수정했다. *사용할 폴더cd /etc/nginx/ ** nginx.conf 파일에서 inc
growing-nyang.tistory.com
참고자료
https://m42-orion.tistory.com/141
[AWS] Domain & HTTPS 적용하기
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글 입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다!✅ 목표이전 포스팅에서 Github Actions, AWS EC3 & S3 & CodeDeploy를 통해 배포 자동
m42-orion.tistory.com
'DevOps > AWS' 카테고리의 다른 글
[AWS] 배포 자동화 : S3에 CloudFront 적용하기 (1) | 2025.05.30 |
---|---|
[AWS] 배포 자동화: AWS RDS 구축 및 EC2와 MySQL 워크벤치에 연결 (0) | 2025.05.28 |
[AWS] 배포 자동화 : 트러블슈팅 (1) | 2025.05.23 |
[AWS] 배포 자동화 : CodeDeploy 설정 및 Github Actions workflow 작성 (0) | 2025.05.23 |
[AWS] 배포 자동화 : AWS IAM 설정 & Github Actions 입력 & S3 설정 (0) | 2025.05.22 |