AWS Route 53, SSL 인증서, CDN과 CloudFront
AWS에서의 도메인 관리, 인증서, CDN까지 전반적인 구조와 실무 적용 방법
AWS Route 53, SSL 인증서, CDN과 CloudFront
AWS Route 53: 도메인 관리의 핵심
1. 개요
- Route 53: AWS에서 제공하는 고가용성, 확장성 높은 DNS 웹 서비스
주요 기능:
- 도메인 등록
- DNS 라우팅 정책 관리
- 헬스 체크(Failover) 기능
- 도메인 이름 ↔ IP 주소 변환(DNS 해석)
2. 핵심 개념
DNS 용어 정리
용어 | 설명 |
---|---|
Domain Name | 웹사이트 주소 (예: example.com) |
IP Address | 인터넷상의 서버 주소 (IPv4/IPv6) |
DNS | 도메인 이름을 IP로 바꿔주는 시스템 |
Hosted Zone | Route 53에서의 도메인 설정 영역 |
Record Set | 도메인 트래픽 규칙 (A, CNAME 등) |
Route 53 구성 요소
- 도메인 등록 (Registrar)
- Hosted Zone: Public / Private
- 레코드 타입: A, AAAA, CNAME, MX, TXT, NS, SOA 등
- 헬스 체크: 상태 비정상일 경우 장애 조치 가능
3. 라우팅 정책 종류
정책 | 설명 |
---|---|
Simple | 기본 라우팅 (단일 IP) |
Weighted | 가중치 분산 트래픽 처리 |
Latency-based | 지연시간 최소 리전 선택 |
Failover | 헬스 체크 기반 장애 조치 |
Geolocation | 사용자 위치 기반 |
Geoproximity | 위치 + 가중치 기반 (Traffic Flow 필요) |
Multi-value answer | 헬스 체크 기반 IP 다수 제공 |
4. 주요 레코드 타입 설명
- A 레코드: 도메인 → IPv4 주소 매핑
- AAAA 레코드: 도메인 → IPv6 주소 매핑
- CNAME: 도메인 → 다른 도메인 별칭
- MX: 이메일 수신 서버 지정 (우선순위 설정 포함)
- TXT: 도메인 소유권 확인, SPF, DKIM 등 설정
- NS: 도메인을 관리하는 네임서버 지정
- SOA: DNS 관리 정보 포함 (Serial, Refresh 등)
AWS Certificate Manager (ACM): HTTPS의 출발점
1. SSL/TLS란?
- SSL/TLS: 웹에서의 암호화 통신을 위한 프로토콜
- 보통 “SSL 인증서”라고 부르지만 실제로는 TLS 인증서가 표준
2. ACM 주요 기능
기능 | 설명 |
---|---|
공용 인증서 발급 | DNS 또는 Email 검증, 무료 |
사설 인증서 | ACM PCA 기반 유료 발급 |
자동 갱신 | ELB, CloudFront 등에 연결 시 자동 갱신/배포 |
외부 인증서 등록 | 수동 등록 (.crt, .key 등) |
3. ACM 인증서 발급 절차
- 인증서 요청:
example.com
,www.example.com
등 - 소유권 검증: DNS 레코드 추가 또는 이메일 확인
- 발급 및 사용: ELB, CloudFront에 연결하여 HTTPS 통신 가능
1
2
3
aws acm request-certificate \
--domain-name www.example.com \
--validation-method DNS
4. 실무 적용 예시
ELB에 연결하는 리스너 생성:
1
2
3
4
5
aws elbv2 create-listener \
--load-balancer-arn <lb-arn> \
--protocol HTTPS --port 443 \
--certificates CertificateArn=<certificate-arn> \
--default-actions Type=forward,TargetGroupArn=<tg-arn>
5. 주의사항
- CloudFront에서 사용 시 us-east-1 리전에 인증서가 있어야 함
- 외부 인증서를 가져오면 자동 갱신 안 됨
CDN과 AWS CloudFront
1. CDN이란?
- 콘텐츠 전송 네트워크(Content Delivery Network): 웹 콘텐츠를 전 세계 엣지 서버에 캐싱하고, 사용자 가까운 서버에서 빠르게 제공
2. CloudFront란?
- AWS의 CDN 서비스로, S3, ALB, EC2 등과 연동 가능
- 요청을 가장 가까운 Edge Location에서 처리하여 지연 감소
주요 구성 요소
구성 요소 | 설명 |
---|---|
Distribution | CloudFront 단위 인스턴스 |
Origin | 콘텐츠 원본 (S3, ALB 등) |
Cache Behavior | 경로별 캐시/라우팅 정책 |
Edge Location | 전 세계 캐시 서버 위치 |
TTL | 캐시 수명 설정 |
3. 보안 기능
- HTTPS 지원: ACM 인증서로 암호화
- Signed URLs / Cookies: 인증된 사용자만 접근
- WAF 통합: 웹 방화벽 적용 가능
- Geo Restriction: 국가 기반 접근 제어
4. 실무 구성 순서
- S3/ALB를 Origin으로 설정
- Cache Behavior 구성 (TTL, 경로 등)
- ACM 인증서 연결 (us-east-1)
- Route 53을 통한 도메인 연결
- 배포 후 테스트
5. 캐시 무효화 예시
1
2
3
aws cloudfront create-invalidation \
--distribution-id E123ABCXYZ \
--paths "/index.html" "/logo.png"
6. 요금 및 주의사항
항목 | 주의 사항 |
---|---|
인증서 | 반드시 us-east-1에서 생성 |
캐시 정책 | TTL 설정 신중히, 무효화는 유료 |
외부 도메인 연결 | Route 53 또는 외부 DNS 필요 |
요약
항목 | 설명 |
---|---|
Route 53 | 도메인 이름 등록과 DNS 설정 |
ACM | SSL/TLS 인증서 발급 및 갱신 |
HTTPS | TLS 기반 암호화 통신 프로토콜 |
CloudFront | 전 세계 엣지에서 콘텐츠 제공 (CDN) |
SSL 인증서 위치 | CloudFront의 경우 us-east-1 필수 |
This post is licensed under CC BY 4.0 by the author.