
이 글은 「Cloudflare 완전 정복」 시리즈 2회입니다. 1회에서 Cloudflare가 단순 CDN을 넘어 연결성 클라우드로 진화했다는 큰 그림을 살펴봤다면, 오늘은 직접 손을 움직일 차례입니다. 도메인 1개, 30분, 비용 0원 — 이 세 조건만으로 DNS 보호, 글로벌 CDN, 캐시 최적화를 한꺼번에 켜 보겠습니다.
왜 DNS부터 시작해야 하는가
Cloudflare의 모든 기능은 DNS를 자사 네임서버로 위임하는 순간부터 작동합니다. 터널도, Zero Trust도, Workers도 결국 DNS 레코드 위에 올라갑니다. 반대로 말하면, DNS 설정 하나를 제대로 해 두면 이후 시리즈에서 다룰 모든 기능을 추가 비용 없이 점진적으로 활성화할 수 있습니다.
클라우드플레어 DNS 설정의 핵심 이점 세 가지:
- Anycast 네트워크 — 전 세계 330개 이상 도시에서 DNS 응답. 국내 사용자도 서울·도쿄 PoP에서 수 밀리초 내에 응답받습니다.
- DDoS 방어 기본 포함 — 무료 플랜에서도 무제한 DNS 쿼리 DDoS 완화가 적용됩니다.
- 프록시(오렌지 구름) 한 번 클릭 — A/AAAA/CNAME 레코드에 프록시를 켜는 순간, CDN + SSL + 기본 WAF가 동시에 활성화됩니다.

Step 1 — Cloudflare에 도메인 추가 (5분)
1-1. 계정 생성 및 사이트 추가
dash.cloudflare.com/sign-up에서 무료 계정을 만든 뒤, 대시보드 상단 「+ Add a site」를 클릭합니다. 도메인(예: example.com)을 입력하고 Free 플랜을 선택하세요.
1-2. 기존 DNS 레코드 자동 스캔
Cloudflare가 현재 네임서버에 등록된 레코드를 자동으로 가져옵니다. 가져온 목록을 확인하고, 빠진 레코드가 있으면 수동으로 추가합니다. 특히 MX 레코드(이메일)와 TXT 레코드(SPF/DKIM)가 빠지기 쉬우니 꼭 확인하세요.
1-3. 네임서버 변경
Cloudflare가 할당한 두 개의 네임서버(예: anna.ns.cloudflare.com, bob.ns.cloudflare.com)를 도메인 등록 대행사(가비아, 호스팅케이알, Namecheap 등)의 관리 패널에서 교체합니다.
주의: 네임서버 변경은 전파에 최대 24~48시간이 걸릴 수 있지만, 대부분 1~2시간 내에 완료됩니다.
Step 2 — DNS 레코드 구성과 프록시 활성화 (10분)
2-1. 핵심 레코드 설정
네임서버 전파가 완료되면(대시보드에 “Active” 표시), DNS 탭에서 레코드를 정리합니다.
워드프레스 블로그를 Cloudflare CDN으로 가속하는 전형적인 구성:
A—@→ 서버 IP (프록시 ON 🟠)CNAME—www→example.com(프록시 ON 🟠)MX—@→ 메일 서버 (프록시 OFF ⬜, MX는 프록시 불가)TXT— SPF/DKIM/DMARC (프록시 OFF ⬜)
2-2. 오렌지 구름(프록시)의 의미
레코드 옆 구름 아이콘이 🟠 주황색이면 트래픽이 Cloudflare를 경유합니다. 이 순간부터:
- 원본 서버 IP가 외부에 노출되지 않습니다 (보안 향상).
- Cloudflare의 글로벌 CDN 캐시가 자동 적용됩니다.
- 무료 SSL/TLS 인증서가 자동 발급됩니다.
- 기본 DDoS 방어가 활성화됩니다.
⬜ 회색 구름(DNS only)은 Cloudflare를 단순 DNS 리졸버로만 사용합니다. 메일 서버(MX), SSH 직접 접속용 서브도메인 등에 적합합니다.
2-3. 실습 — CLI로 DNS 전파 확인
Synology NAS SSH 또는 Mac Studio 터미널에서 다음 명령어로 네임서버 전환과 프록시 적용을 확인합니다:
# 네임서버가 Cloudflare로 변경됐는지 확인
dig NS example.com +short
# 기대 출력: anna.ns.cloudflare.com. / bob.ns.cloudflare.com.
# A 레코드가 Cloudflare IP로 프록시되는지 확인
dig A example.com +short
# 프록시 ON이면 원본 IP 대신 Cloudflare IP(104.x.x.x 또는 172.x.x.x)가 표시됨
# 응답 헤더에서 Cloudflare 경유 확인
curl -sI https://example.com | grep -i "cf-ray\|server"
# 기대 출력: server: cloudflare / cf-ray: xxxxxxx-ICN
cf-ray 헤더가 보이면 성공입니다. 끝에 붙는 3글자 코드(예: ICN)는 응답한 Cloudflare PoP의 IATA 공항 코드로, ICN은 인천(서울) 엣지입니다.

Step 3 — CDN 캐시 설정 최적화 (15분)
3-1. Cloudflare가 기본으로 캐시하는 것
프록시를 켜는 순간 Cloudflare는 정적 파일을 자동으로 캐시합니다. 별도 설정 없이 캐시되는 확장자:
js, css, png, jpg, jpeg, gif, ico, svg, woff, woff2, ttf, eot, webp, avif, mp4, webm
HTML은 기본적으로 캐시하지 않습니다. 워드프레스처럼 동적 페이지를 운영하는 경우, HTML 캐시를 원하면 Cache Rules에서 명시적으로 설정해야 합니다.
3-2. Cache Rules로 워드프레스 최적화
대시보드 → Caching → Cache Rules에서 무료 플랜 기준 최대 10개의 규칙을 만들 수 있습니다. 워드프레스 블로그에 권장하는 기본 규칙 두 가지:
규칙 1: 관리자 영역 캐시 제외
- When: URI Path contains
/wp-adminOR URI Path contains/wp-login - Then: Bypass cache
규칙 2: 정적 콘텐츠 공격적 캐시
- When: URI Path contains
/wp-content/uploads - Then: Eligible for cache, Edge TTL = 1 month, Browser TTL = 1 week
3-3. 브라우저 캐시 TTL 설정
Caching → Configuration에서 Browser Cache TTL을 설정합니다. 권장값:
- 블로그/뉴스 사이트: 4시간 (콘텐츠 업데이트 빈도 고려)
- 정적 포트폴리오: 1개월
- 자주 바뀌는 API 응답: Respect Existing Headers (서버 Cache-Control 존중)
3-4. 캐시 적중률 확인
설정 후 하루 정도 지나면 대시보드 → Analytics & Logs → Traffic에서 캐시 적중률(Cache Hit Ratio)을 확인할 수 있습니다. 정적 콘텐츠 중심 사이트라면 80% 이상이 목표치입니다.
CLI로도 개별 요청의 캐시 상태를 바로 확인할 수 있습니다:
# 캐시 상태 헤더 확인
curl -sI https://example.com/wp-content/uploads/photo.jpg | grep "cf-cache-status"
# HIT = 캐시에서 서빙 (원본 서버 부하 없음)
# MISS = 캐시 없어서 원본에서 가져옴 (다음 요청부턴 HIT)
# DYNAMIC = 캐시 대상 아님 (HTML 등)
# BYPASS = Cache Rules에 의해 캐시 건너뜀
3-5. 캐시 퍼지 (필요 시)
콘텐츠를 수정했는데 이전 버전이 계속 보인다면 캐시를 수동으로 비워야 합니다:
# Cloudflare API로 특정 URL 캐시 퍼지 (API 토큰 필요)
curl -X POST "https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/purge_cache" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{"files":["https://example.com/updated-page"]}'
# 전체 캐시 퍼지 (주의: 일시적 부하 증가)
curl -X POST "https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/purge_cache" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{"purge_everything":true}'
대시보드에서도 Caching → Configuration → Purge Cache로 동일하게 가능합니다. 일반적으로는 대시보드 UI가 더 편합니다.

워드프레스 사용자를 위한 추가 팁
Cloudflare 워드프레스 플러그인
워드프레스를 운영한다면 공식 Cloudflare 플러그인을 설치하세요. 글 발행·수정 시 해당 URL의 캐시를 자동으로 퍼지해 줍니다. 설정 방법:
- 워드프레스 관리자 → 플러그인 → 새로 추가 → “Cloudflare” 검색 → 설치·활성화
- Cloudflare 대시보드에서 API 토큰 생성 (권한: Zone → Cache Purge → Edit)
- 플러그인 설정에서 토큰 입력 → 연동 완료
이렇게 하면 글을 수정할 때마다 수동으로 캐시를 비울 필요가 없습니다.
APO (Automatic Platform Optimization)
워드프레스 전용 유료 옵션인 APO($5/월)를 사용하면 HTML까지 Cloudflare 엣지에 캐시하여 TTFB(첫 바이트 도달 시간)를 극적으로 줄일 수 있습니다. 무료 플랜으로 시작하고, 트래픽이 늘면 고려해 볼 만한 옵션입니다.
월 비용 명세표
| 기능 | Free (무료) | Pro ($20/월) | Business ($200/월) |
|---|---|---|---|
| DNS 호스팅 | 무제한 쿼리, 무제한 레코드 | 동일 | 동일 |
| CDN / Anycast | 무제한 대역폭, 전송료 0원 | 동일 | 동일 |
| SSL/TLS (Universal) | 자동 발급·갱신 포함 | 동일 + 고급 인증서 옵션 | 동일 + 전용 인증서 |
| Cache Rules | 10개 | 25개 | 50개 |
| Page Rules (레거시) | 3개 | 20개 | 50개 |
| DDoS 방어 | 무제한 (Unmetered) | 동일 | 동일 |
| 워드프레스 APO | $5/월 추가 | 포함 | 포함 |
| 이미지 최적화 (Polish) | 미포함 | 포함 | 포함 |
핵심: 오늘 다룬 DNS + CDN + 캐시 설정은 무료 플랜에서 100% 사용 가능합니다. 대역폭 제한도, 전송료도 없습니다. 월 수만 PV 규모의 블로그라면 무료 플랜만으로 충분합니다.
30분 셋업 체크리스트
오늘 한 작업을 정리합니다:
- ✅ Cloudflare 계정 생성 + 도메인 추가
- ✅ 네임서버를 Cloudflare로 변경
- ✅ A/CNAME 레코드에 프록시(🟠) 활성화
- ✅ MX/TXT 레코드는 DNS only(⬜)로 유지
- ✅ Cache Rules 2개 설정 (관리자 제외 + 업로드 공격적 캐시)
- ✅ Browser Cache TTL 설정
- ✅
curl -sI로 cf-ray 헤더와 캐시 상태 확인
이것만으로 여러분의 사이트는 글로벌 330개 도시의 CDN 위에 올라갔고, 원본 서버 IP는 숨겨졌으며, 정적 파일은 방문자와 가장 가까운 엣지에서 서빙됩니다.
다음 회차 예고
3회에서는 오늘 자동으로 켜진 SSL/TLS를 한 단계 더 강화합니다. Full (Strict) 모드, HSTS, 보안 헤더(CSP·X-Frame-Options)까지 — “주소창 자물쇠”를 완벽하게 만드는 HTTPS 설정 완전 가이드를 준비하고 있습니다.
이미지는 Leonardo AI 로 생성되었습니다.
이미지는 Claude AI 로 생성되었습니다.
◀ 이전 1화 (다음 차수는 아직 게시되지 않았습니다)
[…] Cloudflare 완전 정복: 입문부터 2026 AI 에이전트까지 (총 16화 중 3화)◀ 이전 2화 (다음 차수는 아직 게시되지 않았습니다) 카테고리: IT기술 […]