13년차의 서버실

서버, 인프라, 홈랩 기술 블로그

[Nas] Cloudflare Tunnel vs. VPN: 홈서버 원격 접속 비용 효율성 비교 2026년 9월 업데이트

💡 도입: 홈서버 원격 접속, 이젠 선택이 아닌 필수!

안녕하세요, 13년차의 서버실 주인장입니다. 홈랩을 운영하는 인프라 엔지니어라면 누구나 한 번쯤은 이런 고민을 해봤을 거예요. “집에 있는 내 소중한 서버에 외부에서 안전하게 접속하고 싶다!” 저도 처음엔 공유기 포트 포워딩(Port Forwarding)으로 시작했었죠. 특정 포트를 열어두고 DDNS(Dynamic DNS)를 걸어서 접속했었는데, 이게 보안적으로 너무 취약하더라고요.

그러다 보니 자연스럽게 VPN(Virtual Private Network), WireGuard, OpenVPN 같은 기술을 살펴보게 됐어요. 그런데 VPN도 서버를 직접 구축하고 관리하는 게 생각보다 손이 많이 가거든요. 그러다 Cloudflare Tunnel이라는 녀석을 알게 됐는데, 이거 진짜 물건이더라고요. 포트 포워딩 없이, 심지어 개인 홈랩 기준으로는 무료 플랜만으로도 꽤 강력한 보안 구성을 만들 수 있으니까요.

그래서 오늘은 Cloudflare Tunnel과 VPN, 이 두 가지 홈서버 원격 접속 방법을 2026년 9월 기준으로 다시 비교해보려고 합니다. 특히 Cloudflare Zero Trust, WARP, private network routing, NAS 원격 접속, 홈랩 보안 같은 키워드가 중요해진 만큼 예전 글에서 살짝 오래된 부분도 같이 손봤습니다.

홈서버 원격 접속을 위한 Cloudflare Tunnel과 VPN의 개념도를 나타낸 그림입니다. 외부에서 안전하게 홈서버에 접근하는 방식을 한눈에 볼 수 있습니다.

🤔 Cloudflare Tunnel, VPN: 개념부터 잡아봅시다!

본격적인 비교에 앞서, 두 기술이 정확히 어떤 것인지 개념부터 확실하게 짚고 넘어가는 게 좋겠죠? 쉽게 말해드릴게요.

Cloudflare Tunnel (클라우드플레어 터널)

Cloudflare Tunnel은 제로 트러스트(Zero Trust) 보안 모델을 기반으로 하는 서비스예요. 내부 네트워크의 포트를 외부로 직접 열지 않고, 홈서버에 설치한 cloudflared가 Cloudflare 네트워크로 아웃바운드 터널을 만드는 방식입니다.

  • 작동 방식: 홈서버의 cloudflared가 Cloudflare 에지 네트워크로 먼저 연결합니다. 외부 사용자가 your-service.example.com 같은 도메인으로 접속하면 Cloudflare가 해당 요청을 터널을 통해 홈서버 내부 서비스로 전달해요.
  • 주요 장점: 포트 포워딩이 필요 없고, 실제 공인 IP가 노출되지 않으며, SSL/TLS와 DDoS 보호를 Cloudflare 앞단에서 활용할 수 있습니다.
  • 2026년 기준 보완점: 예전에는 “특정 웹 서비스 공개” 느낌이 강했지만, 지금은 Cloudflare One Client(WARP)와 Tunnel CIDR 라우팅을 조합해 사설 IP 대역까지 연결하는 구성이 더 자연스러워졌습니다. 다만 이 경우에는 클라이언트 등록, Split Tunnel, Gateway 정책까지 같이 설계해야 합니다.

VPN (Virtual Private Network, 가상 사설망)

VPN은 이름 그대로 가상 사설망을 구축해서 외부 네트워크에서도 마치 집 안 네트워크에 있는 것처럼 접속하는 기술이에요. 홈랩에서는 여전히 WireGuard가 가장 가볍고 빠른 선택지로 많이 쓰이고, OpenVPN은 호환성이 좋은 편입니다.

  • 작동 방식: VPN 클라이언트가 VPN 서버로 암호화된 터널을 만들고, 클라이언트는 할당받은 내부 IP를 통해 NAS, Proxmox, Docker 서비스, 관리 페이지 등에 접근합니다.
  • 주요 장점: 네트워크 전체 접근이 쉽습니다. 특정 웹 서비스뿐 아니라 SSH, SMB, RDP, 내부 DNS 등 홈 네트워크 전체를 다뤄야 한다면 여전히 VPN이 편해요.
  • 주의할 점: VPN 서버 포트를 외부에 열어야 하는 경우가 많고, 인증키 관리, 방화벽, 라우팅, 업데이트를 꾸준히 챙겨야 합니다.

⚔️ Cloudflare Tunnel vs. VPN: 비용 효율성 및 주요 차이점 비교

이제 두 기술의 가장 중요한 차이점, 그리고 홈랩 운영자의 입장에서 어떤 방식이 더 비용 효율적인지 비교해볼까요?

기준 Cloudflare Tunnel VPN
비용
  • 무료 플랜: 개인 홈서버, NAS 원격 접속, 소규모 홈랩에는 여전히 충분한 편입니다.
  • 팀 단위 Access, Gateway, 로그 보관, 고급 보안 정책이 필요하면 유료 플랜을 검토해야 합니다.
  • 홈서버에서 직접 운영하면 추가 서버 비용은 거의 없지만, 전기료와 유지보수 비용은 발생합니다.
  • 클라우드 VPS에 VPN을 두면 월별 요금이 붙습니다.
설정 난이도
  • 웹 서비스 공개만 한다면 비교적 간단합니다.
  • 2026년 기준으로는 Cloudflare Zero Trust 대시보드에서 터널과 퍼블릭 호스트네임을 만드는 방식이 가장 편합니다.
  • WireGuard는 예전보다 쉬워졌지만, 라우팅과 방화벽을 이해해야 삽질이 줄어듭니다.
  • 공유기, DDNS, 포트 포워딩, 키 관리가 필요할 수 있습니다.
보안 모델
  • 제로 트러스트: 서비스별 접근 정책, 이메일 OTP, MFA, IdP 연동을 붙이기 좋습니다.
  • 내부 포트를 직접 열지 않는 구조라 공격 표면을 줄이기 좋습니다.
  • 경계 기반 보안: VPN에 들어오면 내부망에 들어온 것과 비슷한 권한을 갖기 쉽습니다.
  • 키 유출, 취약한 VPN 서버, 과도한 내부 접근 권한을 조심해야 합니다.
접속 범위
  • 웹 앱, SSH, RDP 같은 서비스 단위 공개에 강합니다.
  • WARP와 Tunnel CIDR 라우팅을 쓰면 사설 IP 대역 접근도 가능하지만, 설정은 단순 웹 공개보다 복잡합니다.
  • 네트워크 전체 접근이 가장 자연스럽습니다.
  • NAS 파일 공유, 내부 DNS, 여러 장비 관리에는 여전히 강합니다.
성능
  • Cloudflare 에지 네트워크를 거치므로 웹 서비스에는 체감이 좋은 경우가 많습니다.
  • 대용량 파일 전송이나 실시간 내부망 작업은 구성에 따라 VPN이 더 단순하고 빠를 수 있습니다.
  • 성능은 집 인터넷 업로드 속도, VPN 서버 성능, 암호화 오버헤드에 좌우됩니다.
  • WireGuard는 대체로 가볍고 빠른 편입니다.
추가 기능
  • Cloudflare Access, Gateway 정책, WAF, Turnstile, 로그, IdP 연동과 결합하기 좋습니다.
  • 원격 접속 자체에 집중합니다. 세밀한 사용자별 웹 접근 제어는 별도 솔루션이 필요할 수 있습니다.
Cloudflare Tunnel과 VPN 기능 및 비용 효율성 비교 인포그래픽

정리하자면, Cloudflare Tunnel은 웹 기반 홈서버 서비스, NAS 관리 페이지, 개인 대시보드, SSH 접속을 안전하게 노출하고 싶을 때 비용 효율이 좋습니다. 반면 VPN은 홈 네트워크 전체 접근, SMB 파일 공유, 내부 장비 관리, 모든 트래픽 암호화가 필요할 때 여전히 강력합니다.

🛠️ Cloudflare Tunnel 실전 구축: 홈서버 원격 접속!

이제 이론은 충분히 봤으니, 홈랩에 Cloudflare Tunnel을 구축하는 과정을 2026년 기준으로 정리해볼게요. 예전처럼 CLI만으로 만들 수도 있지만, 지금은 Cloudflare Zero Trust 대시보드에서 터널을 만들고 Connector 토큰으로 서버를 등록하는 방식이 가장 직관적입니다.

1단계: Cloudflare 계정, 도메인, Zero Trust 조직 준비

먼저 Cloudflare 계정을 만들고, 사용할 도메인을 Cloudflare DNS에 등록합니다. 그다음 Cloudflare 대시보드에서 Zero Trust 조직을 생성해야 해요. Free 플랜을 선택해도 결제 정보 입력 단계가 나올 수 있지만, 무료 플랜 자체는 개인 홈랩 테스트에 충분합니다.

도메인은 꼭 비싼 걸 살 필요는 없고, NAS 원격 접속용으로 nas.example.com, home.example.com, ssh.example.com처럼 서브도메인을 나눠 쓰면 관리가 편합니다.

2단계: cloudflared 설치 및 최신 버전 확인

2026년 9월 기준 최신 cloudflared 릴리스는 2026.9.1입니다. 2026.8.0 계열에는 일부 HTTP origin 요청에서 trailing slash 처리 문제가 보고됐기 때문에, 가능하면 2026.8.2 이상 또는 최신 버전으로 올리는 걸 추천합니다.

# 리눅스 AMD64 기준 cloudflared 설치 예시
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -o /usr/local/bin/cloudflared
chmod +x /usr/local/bin/cloudflared

# 설치 확인
cloudflared --version

라즈베리 파이나 ARM 서버를 쓴다면 cloudflared-linux-arm64 또는 패키지 저장소 방식을 쓰는 게 좋습니다. 그리고 2027년부터는 32비트 Windows와 Intel 기반 macOS용 cloudflared 신규 빌드가 중단될 예정이라, 오래된 장비에 설치해둔 분들은 미리 ARM64, x86_64 Linux, Apple Silicon macOS 환경으로 옮길 계획을 세워두는 게 좋아요.

3단계: 터널 생성 및 설정

CLI로 직접 만드는 방식은 여전히 사용할 수 있습니다.

# Cloudflare 계정 로그인
cloudflared tunnel login

# 터널 생성
cloudflared tunnel create my-homelab-tunnel

설정 파일은 보통 /etc/cloudflared/config.yaml에 둡니다.

tunnel: [YOUR_TUNNEL_UUID]
credentials-file: /root/.cloudflared/[YOUR_TUNNEL_UUID].json

ingress:
  - hostname: your-service.your-domain.com
    service: http://localhost:8080
  - service: http_status:404

요즘 제가 더 추천하는 방식은 Zero Trust 대시보드에서 Networks > Tunnels로 들어가 터널을 만들고, 안내되는 Connector 설치 명령을 서버에 붙여 넣는 방법입니다. 이 방식은 자격 증명 파일과 서비스 등록 과정이 덜 헷갈려요.

4단계: DNS 레코드 설정

CLI 방식이라면 다음 명령으로 CNAME 레코드를 만들 수 있습니다.

cloudflared tunnel route dns my-homelab-tunnel your-service.your-domain.com

대시보드 방식이라면 터널 설정의 Public Hostname에서 your-service.your-domain.com을 추가하고, 내부 서비스 주소를 http://localhost:8080처럼 입력하면 됩니다. 생성된 CNAME은 [YOUR_TUNNEL_UUID].cfargotunnel.com 형태이며, Cloudflare 프록시가 켜져 있어야 보안과 성능 이점을 제대로 활용할 수 있습니다.

5단계: 터널 실행 및 서비스 등록

CLI 방식에서는 다음처럼 systemd 서비스로 등록할 수 있습니다.

sudo cloudflared tunnel service install
sudo systemctl enable --now cloudflared
sudo systemctl status cloudflared

대시보드에서 만든 터널은 보통 아래처럼 토큰이 포함된 설치 명령을 제공합니다.

sudo cloudflared service install [TOKEN]
sudo systemctl status cloudflared

systemctl status cloudflared에서 active (running) 상태가 보이면 1차 성공입니다. 이후 Cloudflare Zero Trust 대시보드에서도 터널 상태가 Healthy로 표시되는지 확인해보세요.

Cloudflare Zero Trust 대시보드 터널 연결 성공 스크린샷

⚠️ 삽질 경험: Service Tunnel Error 해결하기

제가 처음 Cloudflare Tunnel을 설정할 때 가장 많이 겪었던 오류 중 하나가 바로 Service Tunnel Error였어요. 터널은 생성됐는데, 실제 서비스가 안 열리는 답답한 상황이죠.

  1. config.yaml 파일 오류: YAML은 들여쓰기에 민감합니다. 탭 대신 스페이스를 쓰고, ingress 마지막에는 http_status:404 같은 기본 규칙을 넣어주세요.
  2. 잘못된 service 주소: http://localhost:8080으로 적었는데 실제 컨테이너가 다른 포트에서 떠 있거나, Docker 네트워크 때문에 localhost가 맞지 않는 경우가 많습니다.
  3. 내부 서비스 미실행: docker ps, systemctl status, ss -tulnp로 실제 서비스가 리스닝 중인지 확인하세요.
  4. 방화벽 문제: ufw, firewalld, NAS 자체 방화벽이 cloudflared의 내부 접근을 막을 수 있습니다.
  5. cloudflared 버전 문제: 특정 릴리스에서 회귀 버그가 생길 수 있으니, 이상 증상이 있으면 최신 안정 버전으로 올려보세요.
  6. 로그 확인: journalctl -u cloudflared --since '10 minutes ago' 또는 대시보드 Connector 로그를 보면 원인이 훨씬 빨리 보입니다.

저도 “아, 이거 왜 안 되지?” 하면서 한참을 붙잡고 있다가 로그를 보니 내부 서비스 포트가 틀렸던 적이 있습니다. 결국 터널 문제처럼 보여도 절반은 origin 서비스 주소 문제더라고요.

✅ 검증 및 결과: 제로 트러스트 원격 접속의 편리함

모든 설정을 마쳤다면 브라우저에서 your-service.your-domain.com으로 접속해보세요. 정상적으로 홈서버 서비스 화면이 뜨면 성공입니다.

  • 안전한 접속: 포트 포워딩 없이 실제 IP를 숨긴 채 홈서버에 접속할 수 있습니다.
  • Cloudflare 보호: HTTPS, DDoS 방어, 프록시 기반 보호를 쉽게 붙일 수 있습니다.
  • Zero Trust Access 연동: 이메일 OTP, MFA, Google Workspace, GitHub 같은 IdP 연동으로 사용자 인증을 추가할 수 있습니다.
  • NAS 원격 접속 최적화: Synology, TrueNAS, Unraid, Proxmox 대시보드처럼 웹 기반 관리 화면을 공개할 때 특히 편합니다.
Cloudflare Tunnel을 통한 홈서버 웹 서비스 접속 화면

🆕 2026년 9월 기준 새로 챙겨볼 변화

원문 작성 이후 홈서버 원격 접속 쪽에서 체크할 만한 변화가 몇 가지 있었습니다.

  • cloudflared 최신 버전: 2026년 9월 기준 최신 릴리스는 2026.9.1입니다. 자동 업데이트나 정기 업데이트 루틴을 잡아두는 걸 추천합니다.
  • 오래된 클라이언트 지원 축소: 2027년부터 32비트 Windows와 Intel 기반 macOS용 신규 cloudflared 빌드가 중단될 예정입니다. 오래된 맥 미니나 구형 Windows 장비를 터널 서버로 쓰고 있다면 이전 계획이 필요합니다.
  • Private Network Routing 강화: Cloudflare Tunnel은 이제 단순 웹 앱 공개뿐 아니라 WARP 클라이언트와 Tunnel CIDR 라우팅을 통해 사설망 접근 시나리오에도 자주 쓰입니다. 전통적인 VPN 대체 구성이 더 현실적이 됐어요.
  • Access for Infrastructure: SSH 같은 인프라 접근을 사용자, 포트, 프로토콜 단위로 더 세밀하게 제어하는 기능도 계속 강화되고 있습니다. 홈랩에서도 SSH를 그냥 인터넷에 열어두는 방식은 이제 굳이 선택할 이유가 줄었습니다.
  • 보안 키워드 변화: 단순 “원격 접속”보다 Zero Trust NAS, Cloudflare WARP, 홈랩 보안, 포트포워딩 대체, self-hosted secure access 같은 관점으로 설계하는 흐름이 강해졌습니다.

💡 마무리: 어떤 방식이 나에게 맞을까?

결론은 꽤 명확합니다. 웹 기반 서비스 몇 개를 안전하게 공개하고 싶다면 Cloudflare Tunnel이 비용 효율과 관리 편의성 면에서 아주 좋습니다. NAS 관리 페이지, 개인 위키, 홈 대시보드, 개발용 웹앱, SSH 접근 정도라면 포트 포워딩 없이 깔끔하게 운영할 수 있어요.

반대로 내부망 전체를 내 노트북으로 끌고 와야 한다면 VPN이 아직도 편합니다. SMB 파일 공유, 내부 DNS, 여러 장비의 관리 포트, 대용량 파일 작업이 많다면 WireGuard 기반 VPN이 더 단순할 수 있어요.

개인적으로는 두 가지를 같이 씁니다. 평소 자주 쓰는 웹 서비스는 Cloudflare Tunnel로 열고, 내부망 전체 접근이 필요할 때만 WireGuard VPN을 켜는 식이죠. 홈서버 원격 접속은 하나만 고집하기보다, 서비스 성격에 맞게 나눠 쓰는 게 제일 편하더라고요.

🔄 마지막 업데이트: 2026년 09월