Skip to content
Published on

2026년의 셀프호스팅 르네상스 — Tailscale·Coolify·Dokku와 홈랩으로 다시 만든 개인 인프라

Authors

프롤로그 — 왜 다시 직접 돌리는가

2018년의 친구는 "그거 왜 자기가 돌려? AWS 띄워" 라고 했다. 2026년의 같은 친구는 N100 미니PC에 Coolify 깔고, Tailscale 들어가서 자기 Immich로 사진을 본다.

이 변화는 갑자기 일어난 게 아니다. 몇 개의 점이 동시에 찍혔다.

  • 클라우드가 비싸졌다. 환율, AWS egress, S3 요청 단가, 그리고 무엇보다 "잘 모르고 켜놨다가 1만 달러 청구서"의 공포. 작은 사이드 프로젝트 한 두 개를 굴리는 데 매달 100달러 넘게 새던 사람들이 N100 미니PC 한 대 200달러에 평생 호스팅으로 갈아탔다.
  • 메시 VPN이 일상이 되었다. Tailscale이 WireGuard를 사람 쓸 수 있게 포장해 무료로 풀어준 뒤로, "포트 포워딩, 동적 DNS, 인증서, NAT 뚫기" 라는 4대 지옥이 한꺼번에 사라졌다. Headscale로 Tailscale 서버까지 셀프호스팅하는 사람도 늘었다.
  • 컨테이너가 어른이 되었다. Docker Compose 한 파일로 Immich·Nextcloud·Vaultwarden·Forgejo·Plausible·Pi-hole이 5분 만에 뜬다. 5년 전 Ansible 플레이북 짜던 시절은 어디 갔는지 모를 정도다.
  • PaaS가 오픈소스로 풀렸다. Coolify·Dokku·CapRover가 "git push, 알아서 빌드/배포" 경험을 자기 서버에 그대로 얹어준다. Heroku에 100달러 내던 게 0달러가 되는 마법.
  • 사진·문서·비밀번호·가족 채팅의 데이터 주권 이 다시 의제가 됐다. Google Photos는 무한이 아니고, Bitwarden은 유료가 되고, 무엇이 학습 데이터가 되는지 누구도 보장하지 않는다. "내 데이터는 내 디스크에"가 다시 매력적이다.
  • 사이드 프로젝트 미학 이 돌아왔다. selfh.st 뉴스레터, r/selfhosted, awesome-selfhosted, Homelab Show — 자기 작은 서버를 자랑하는 문화. 90년대 PC 동호회가 21세기 버전으로 부활한 느낌.

이 글은 그 셀프호스팅 르네상스의 2026년 시점 지도다. 무엇을 어떤 도구로 셀프호스팅하고, 무엇은 절대 셀프호스팅하지 말아야 하는가 까지.


1장 · 토대 — 메시 VPN이 모든 것을 바꿨다

지금의 홈랩 붐을 한 줄로 요약하면 이거다.

Tailscale이 나오기 전과 후로 셀프호스팅이 나뉜다.

Tailscale이 무엇을 없앴는가

옛날의 홈서버 가이드는 항상 같은 챕터로 시작했다.

  1. 공유기 들어가서 포트포워딩 80·443·22 열기
  2. 동적 DNS(DDNS) 설정해서 가정용 IP를 도메인에 연결
  3. Let's Encrypt 인증서 받고 nginx 리버스 프록시
  4. 침입 탐지·fail2ban·SSH 키 인증
  5. 그리고 토요일 새벽에 누가 SSH 공격을 하고 있다는 알람으로 잠을 깬다

Tailscale은 이 사슬을 한 줄로 끊었다. 포트를 하나도 안 열어도 된다. 모든 기기에 클라이언트를 깔고, 동일 계정으로 로그인하면, WireGuard 기반 P2P 메시가 자동으로 깔린다. 100.x.y.z 대역의 사적 IP가 모든 기기에 붙고, 그 안에서만 통신한다.

2026년 시점의 Tailscale은 다음을 제공한다.

  • WireGuard 기반의 메시 VPN — 허브 앤 스포크가 아니라 P2P. 두 노드가 직접 연결되면 트래픽이 컨트롤플레인을 거치지 않는다.
  • NAT 뚫기(STUN·UDP hole punching) 자동. 안 뚫리면 DERP 릴레이로 폴백.
  • MagicDNS100.64.x.x 대신 my-nas.tailnet-name.ts.net 같은 이름.
  • Tailscale SSH — SSH 키 관리를 ACL로 위임. 베스천이 사라진다.
  • Subnet router / Exit node — 게이트웨이 한 대로 가정 LAN 전체를 노출하거나, 모든 트래픽을 집을 통해 보내거나.
  • Funnel — 특정 서비스만 공개 인터넷에 살짝 노출(완전한 포트 개방 없이).
  • ACL(JSON) — 누가 누구한테 무슨 포트로 갈 수 있는지를 코드로.
  • 무료 플랜: 100대 기기, 3 사용자(2024년 4월 확장 이후 2026년에도 유지).

Headscale — Tailscale 컨트롤플레인을 셀프호스팅

Tailscale의 컨트롤플레인(좌표·인증·ACL)은 회사가 운영한다. "그것도 못 믿는다"는 사람들을 위해 Headscale(MIT 라이선스)이 호환 컨트롤플레인을 제공한다. 데이터플레인은 그대로 WireGuard라서 성능 차이 없음.

2026년 시점 Headscale은 v0.26 대를 안정으로 본다. OIDC SSO, 정책 v2, prefixed API 키, embedded DERP까지. "회사 OAuth 붙은 우리만의 Tailscale"이 가능해졌다.

작은 ACL 한 조각

{
  "acls": [
    { "action": "accept", "src": ["group:admin"], "dst": ["*:*"] },
    { "action": "accept", "src": ["group:family"], "dst": ["tag:media:80,443"] },
    { "action": "accept", "src": ["tag:ci"], "dst": ["tag:registry:443"] }
  ],
  "groups": {
    "group:admin":  ["alice@example.com"],
    "group:family": ["bob@example.com", "carol@example.com"]
  },
  "tagOwners": {
    "tag:media":    ["group:admin"],
    "tag:registry": ["group:admin"],
    "tag:ci":       ["group:admin"]
  }
}

이 한 파일로 "관리자는 다, 가족은 미디어만, CI는 레지스트리만" 가 끝난다. 방화벽 규칙을 IP가 아닌 신원으로 쓴다는 발상의 전환.

Tailscale Funnel — 포트 안 열고 공개 노출

Funnel은 Tailnet 내부 서비스를 공식 도메인 xxx.ts.net 으로 공개한다. TLS는 Tailscale이 발급/갱신하고, 트래픽은 일단 Tailscale을 통과한 뒤 내부 노드로 들어온다. 공유기 포트 0개 열고도 공개 블로그 운영 가능.

대안 한 줄 정리

도구특징한 줄
Tailscale관리형 SaaS + 무료 100대가장 쉽다. 90%의 사람은 여기서 끝
HeadscaleTailscale 호환 컨트롤플레인 셀프호스팅회사용·완전 자주적
NetbirdOSS 메시, ZTNA·정책 풍부Tailscale 대안 1순위
ZeroTier가상 L2 네트워크, 오래된 강자LAN 게임·임베디드에 강함
NebulaSlack이 만든 메시, 가볍고 빠름운영 부담 큼
WireGuard 생짜가장 빠르지만 모든 걸 직접메시는 직접 그려야 함

이 장의 결론은 단순하다 — 무엇을 셀프호스팅하든, Tailscale을 먼저 깔고 시작한다. 공개 노출이 필요한 단 한 가지(블로그 같은)만 Funnel이나 Cloudflare Tunnel을 따로 쓴다.


2장 · PaaS의 셀프호스팅 — Coolify·Dokku·CapRover

홈서버는 결국 "Heroku 같이 git push 한 번에 배포" 를 자기 손에 쥐고 싶다는 욕망에서 출발한다. 2026년에는 이 영역에 세 명의 주요 선수가 있다.

2.1 Coolify — 2025-2026의 스타

Coolify는 헝가리 개발자 Andras Bacsai가 만들고, 지금은 정식 회사화된 PHP/Laravel 기반 오픈소스 PaaS다. Apache 2.0 라이선스, 자기 서버에 Docker 한 호스트만 있으면 Heroku/Vercel과 거의 같은 경험을 준다.

제공하는 것:

  • Git 리포 연결 — GitHub/GitLab/Gitea/Bitbucket. Push 시 자동 빌드/배포.
  • Nixpacks / Heroku Buildpacks / Dockerfile 자동 감지.
  • 프리뷰 환경 — PR마다 별도 도메인.
  • DB·Redis·RabbitMQ·MeiliSearch 한 클릭 프로비저닝.
  • 자동 TLS(Caddy 기반 트래픽 라우터).
  • 다중 서버 — 한 Coolify에서 여러 노드 관리.
  • One-click 자가 호스팅 앱 카탈로그(Plausible, Umami, n8n, Supabase, …).
  • 백업 → S3 호환 스토리지(B2, R2, MinIO).

2026년 현재 Coolify는 안정 4.x 대에서 운영되며, 한 줄 설치 스크립트가 거의 표준이 됐다. selfh.st 뉴스레터의 가장 잦은 키워드.

언제 쓰나:

  • 자기 사이드 프로젝트 여러 개를 굴리는 1인 개발자.
  • 작은 팀의 스테이징/프로덕션 한 박스 운영.
  • Heroku/Vercel 비용이 부담되기 시작한 인디 메이커.

약점:

  • DB 백업 복구 흐름은 여전히 손이 간다.
  • 멀티 노드는 가능하지만 본격 클러스터는 아니다(거기까지 가면 K3s).
  • 코어 코드가 Laravel 기반 — 깊은 커스터마이즈가 필요하면 진입 장벽.

2.2 Dokku — PaaS-in-a-Box의 원조

Dokku는 2013년 등장. "Heroku를 100줄로 만들 수 있을까?" 하는 실험에서 시작해, 지금은 가장 검증된 단일 호스트 PaaS다. MIT 라이선스, 셸 스크립트와 Docker로 만들어졌고, 시간에 검증된 신뢰성 이 강점.

핵심 흐름:

# 호스트에서
dokku apps:create myblog
dokku domains:add myblog blog.example.com
dokku letsencrypt:set myblog email me@example.com
dokku letsencrypt:enable myblog

# 로컬에서
git remote add dokku dokku@homelab.tailnet-name.ts.net:myblog
git push dokku main
# → 빌드팩 감지 → 컨테이너 빌드 → 무중단 배포

git push dokku main 한 줄로 끝나는 그 경험을 처음 본 사람은 "이게 Heroku 아닌가" 하고 멍해진다.

Coolify vs Dokku 한 줄:

  • Dokku는 CLI/플러그인 중심. 셸이 편한 사람에게.
  • Coolify는 웹 UI 중심. 클릭으로 다 끝내고 싶은 사람에게.

2.3 CapRover — Docker Swarm 기반 사촌

CapRover는 비슷한 카테고리. Docker Swarm 위에서 동작하고, "Quick One-Click Deploy 100+ apps" 카탈로그가 강점. UI가 약간 더 가벼우면서 멀티 노드 클러스터링이 처음부터 들어가 있다. 2026년에는 점유율이 Coolify에 밀리지만 충성 사용자층이 두텁다.

2.4 K3s / k0s — "PaaS는 답답하고 K8s는 무거워서"

좀 더 큰 사람들은 PaaS 대신 가벼운 K8s를 깐다. K3s(Rancher)·k0s(Mirantis)·MicroK8s(Canonical)가 그 자리에 있다. Pi 4/5 한 대에도 들어가는 K8s. ArgoCD·Flux·Helm을 그대로 쓸 수 있다는 게 매력. 다만 "Kubernetes 운영"이라는 비용이 따라온다.

홈랩에서 K3s를 굴린다는 건 거의 종교다. 얻는 것: GitOps, Ingress, ConfigMap 디자인 패턴 연습장. 잃는 것: 주말마다 cert-manager·MetalLB·local-path-provisioner 디버깅.

2.5 결정 매트릭스

상황추천
사이드 프로젝트 2~5개, 빠르게 띄우고 싶다Coolify
CLI 스크립트가 편하고 안정성 우선Dokku
멀티 노드 + One-click 카탈로그CapRover
K8s를 회사에서 쓰니 집에서도 연습K3s
컴포즈 한 파일이 다인 경우그냥 docker compose + Traefik

3장 · 신원·비밀번호·인증 — 셀프호스팅의 본진

데이터를 자기 디스크에 두기 시작하면 가장 먼저 떠오르는 질문이 "그래서 비밀번호는?"이다.

3.1 Vaultwarden — Bitwarden 서버, 비용 0

Vaultwarden은 Rust로 다시 쓴 Bitwarden 호환 서버. 공식 Bitwarden 서버는 .NET 멀티 컨테이너로 무겁지만, Vaultwarden은 단일 바이너리에 SQLite/PostgreSQL 한 줄로 끝난다. 공식 Bitwarden 클라이언트(앱·확장)와 100% 호환.

# docker-compose.yml
services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      DOMAIN: "https://vault.tailnet-name.ts.net"
      SIGNUPS_ALLOWED: "false"
      ADMIN_TOKEN: "<argon2-hash>"
    volumes:
      - ./vw-data:/data
    ports:
      - "127.0.0.1:8080:80"

Tailscale 안에서만 노출하면 공개 인터넷에 자물쇠 보관소를 내놓을 일이 없다. Bitwarden Premium 구독 비용이 0이 되고, 가족 공유 vault·TOTP·파일 첨부까지 다 켜진다.

3.2 Authentik / Authelia / Keycloak — SSO 게이트

여러 셀프호스팅 서비스에 한 번 로그인하고 싶다면 SSO/Reverse Proxy 인증 게이트가 필요하다.

  • Authentik — Python·Django. UI가 가장 친절하고, OAuth2/OIDC·SAML·LDAP을 한 번에. 2026년 가장 인기 있는 옵션.
  • Authelia — Go·가볍다. 2단계 인증·MFA·WebAuthn에 강하다. Traefik의 사실상 짝꿍.
  • Keycloak — 자바·엔터프라이즈 표준. 무거우나 회사에서 본 그대로의 KC를 홈에서.

Tailscale을 깔았다면 "Tailscale ACL이 1차 게이트, Authentik이 2차" 라는 이중 방어가 깔끔하다. 외부에 노출해야 할 서비스가 있을 때만 Authentik이 의미 있다 — 내부 전용이라면 Tailscale ACL만으로도 대부분 충분.

3.3 Passkey/WebAuthn

2026년에 들어서면서 셀프호스팅 진영에서도 Passkey 채택률이 빠르게 올랐다. Vaultwarden은 패스키 vault 저장을 지원하고, Forgejo/Gitea·Authentik·Immich가 WebAuthn 로그인을 표준 옵션으로 둔다. "비밀번호 입력 자체가 사라지는" 흐름은 셀프호스팅에서도 같다.


4장 · 콘텐츠 — 사진·문서·노트·코드·동영상

4.1 Immich — Google Photos 대체의 결정판

Immich는 2026년 셀프호스팅 진영의 가장 큰 성공작이다. Google Photos UX를 그대로 본떴다 — 모바일 앱, 자동 백업, 얼굴 인식, 객체 검색, 지오 클러스터링, 라이브 사진, 외부 라이브러리, 공유 앨범, 큐레이션 메모리. 2024년에 GA가 되었고, 2025년에 사용자 폭증, 2026년 시점엔 "Google Photos에서 옮길 때 쓰는 도구"가 됐다.

뒷단은 ML(CLIP 임베딩 기반 검색·MediaPipe 얼굴 인식·OpenAI Whisper 비디오 음성 추출 옵션)이 다 들어가서, GPU가 있으면 더 좋지만 N100 CPU만으로도 잘 돈다. 가족 단위 라이브러리 보존이 진지해질 때 선택지가 사실상 하나밖에 없는 도구.

4.2 Nextcloud / OwnCloud / Seafile — Drive 대체

  • Nextcloud — 가장 큰 생태계. 캘린더·노트·오피스(Collabora/OnlyOffice)·메일·채팅(Talk)까지 다 들어간 슈퍼앱. 무겁지만 가장 다재다능.
  • OwnCloud Infinite Scale(OCIS) — Go로 다시 쓴 가벼운 버전. 파일 동기화에 집중.
  • Seafile — 동기화 성능이 가장 좋다는 평가. UI는 단순.

가족 사진은 Immich, 일반 문서는 Nextcloud — 가 흔한 조합.

4.3 Forgejo / Gitea — GitHub 대안

GitHub Codespaces·GitHub Copilot 시대에 자기 Git 서버가 무슨 의미가 있나? 두 가지 답.

  1. 소스코드 주권 — 비공개 작업·실험·개인 일지 코드.
  2. CI·이슈·Wiki 한 셋 — Forgejo Actions는 GitHub Actions 워크플로 YAML과 호환된다. actions-runner 만 따로 띄우면 끝.

Forgejo는 2022년 Gitea의 회사화 결정에 반발한 커뮤니티가 포크해서 만든 비영리 프로젝트. 2025년에 Codeberg가 Forgejo로 완전 전환했고, 2026년의 셀프호스팅 진영에서는 Forgejo가 사실상 표준이 됐다. Gitea도 여전히 활발하지만 라이선스·거버넌스 이슈로 신규 채택은 Forgejo 쪽이 우세.

4.4 노트·문서·위키

  • Obsidian + Git/Syncthing/Self-hosted Sync — 마크다운 파일 + Git 동기화의 정공법.
  • Outline — 팀 위키. Slack/Confluence 대체로 자주 거론.
  • AppFlowy — Notion 클론, Rust 기반. 2026년 모바일도 안정화.
  • Trilium / TriliumNext — 단일 사용자 노트 트리. 마니아 코어.
  • BookStack — 책/장/페이지 메타포의 위키. 매뉴얼·런북에 강함.
  • Memos — 트위터 같은 짧은 메모 스트림. 일기 용.

4.5 미디어 서버 — Jellyfin / Plex / Emby

영화·음악·TV 라이브러리는 여전히 미디어 서버가 책임진다. Jellyfin(완전 오픈소스, 무료)이 2024년부터 Plex의 정책 변경 반발로 빠르게 사용자를 흡수했다. Plex는 여전히 UI/HW 트랜스코딩 품질에서 앞서지만, "내 라이브러리에 광고가 끼는 건 못 참는다"는 이유로 이탈한 사용자가 많다.

4.6 RSS·읽기·아카이브

  • Miniflux — Go, 가볍다. 단순한 RSS 리더.
  • FreshRSS — PHP, 기능 많다.
  • Wallabag — Pocket 대체, 나중에 읽기.
  • Readeck / Linkding — 책갈피.
  • Karakeep / Linkwarden — AI 자동 태깅 책갈피, 2026년 핫함.
  • ArchiveBox — URL을 통째로 보관(스크린샷·HTML·warc).

5장 · 인프라 잡일 — DNS·모니터링·자동화

5.1 Pi-hole / AdGuard Home — 가정 DNS 차단기

가정 네트워크 차원에서 광고·트래커·악성 도메인을 DNS 단계에서 막는다. Raspberry Pi 4 한 대(혹은 Docker 컨테이너 하나)면 충분. 한 번 깔면 가족 모두의 핸드폰·TV·스마트 토스터까지 광고가 줄어든다.

  • Pi-hole — 가장 오래됐고 가장 검증됨. UI가 단순.
  • AdGuard Home — Go, 더 모던. DNS-over-HTTPS·DoT·DNSCrypt 업스트림이 더 부드럽다.

2026년에는 둘 다 안정이지만 AdGuard Home 쪽이 신규 채택에서 약간 우세. 둘 다 Tailscale Magic DNS와 잘 어울리는 셋팅이 가능하다 — 외부에선 Tailscale DNS, 내부에선 자기 Pi-hole.

5.2 Beszel / Glances / Netdata — 모니터링

홈서버 모니터링은 회사용 Prometheus + Grafana 까지 갈 필요가 없다.

  • Beszel — Go·SQLite·단일 바이너리. 2024년 등장. 가볍고 예쁘다. 2026년 홈랩 모니터링의 다크호스. 에이전트 + 허브 구조.
  • Glances — 한 호스트 안에서 top/htop의 슈퍼셋. 웹 UI도 있음.
  • Netdata — 1초 해상도, 굉장히 자세. 무거우나 정보량 최강.
  • Uptime Kuma — HTTP/포트 핑 기반 업타임 페이지. 사이드 프로젝트 모니터에 표준.
  • Dozzle — Docker 로그 웹 뷰어.
  • Beszel + Uptime Kuma + Dozzle 세 개면 99%의 홈랩 모니터링이 끝난다.

5.3 백업 — Restic·Borg·Kopia

데이터를 내 디스크에 둔다는 건 백업의 책임도 내가 진다는 뜻이다.

  • Restic — Go, 단일 바이너리, 암호화/중복 제거 표준. S3·B2·Wasabi 등 거의 모든 백엔드 지원.
  • Borg — 더 오래됐고 더 검증됨, 단 푸시 모드의 워크플로가 약간 까다로움.
  • Kopia — UI가 가장 친절, GUI를 함께 제공.
  • Duplicacy — 상용, 라이선스 이슈로 호불호.

3-2-1 백업(3 copy, 2 media, 1 offsite)을 셀프호스팅에도 그대로 적용. offsite의 표준은 보통 Backblaze B2(저렴), Cloudflare R2(egress 무료), AWS S3 Glacier Deep Archive(보관용) 중 하나.

5.4 자동화 — n8n·Home Assistant

  • n8n — Zapier/IFTTT 셀프호스팅 대체. 노드 그래프 자동화.
  • Home Assistant — 스마트홈 OS. 자기 집의 모든 IoT를 통합. 2026년에도 압도적 1위.
  • Node-RED — 시각 프로그래밍, 산업·아두이노 쪽에 강함.

n8n과 Home Assistant는 사실상 "자기 비서를 만드는 캔버스"가 됐다. LLM 노드(Anthropic, OpenAI, Ollama)가 표준으로 들어오면서 "내 로컬 자료를 토대로 답하는 비서"를 만드는 흐름도 흔하다.

5.5 분석 — Plausible / Umami / GoatCounter

블로그·사이드 사이트의 분석을 GA4 대신 셀프호스팅한다.

  • Plausible — Elixir, 가장 폴리시드. 라이선스가 AGPL이라 호스팅 시 주의.
  • Umami — Node/Postgres, MIT, 가장 채택률 높음.
  • GoatCounter — Go, 한 사람의 사이드, 단순함의 미학.

쿠키 배너가 사라지고, 방문자 데이터가 자기 디스크에 머문다.


6장 · 하드웨어 — 책상 밑에 무엇을 둘 것인가

소프트웨어보다 결정이 어려운 게 하드웨어 선택이다. 2026년의 일반적인 패턴.

6.1 N100/N305 미니PC — 사실상 표준

Intel N100(4코어 Alder Lake-N, 6W TDP)·N305(8코어, 15W)는 2024년 이후 셀프호스팅 진영의 "기본기"가 됐다. 200~350달러대에 16GB RAM·512GB NVMe·2.5GbE 듀얼 NIC·VGA 출력까지 다 들어간다.

전기 요금 측면에서 연 30~50 kWh 수준(아이들 5W, 부하 시 15W). 한국 가정 기준 연간 5,000~9,000원. AWS t3.medium 하나가 매달 30달러 가까이 나가는 걸 생각하면 1년 만에 본전이 빠진다.

6.2 Raspberry Pi 5 — 가벼운 노드

Pi 5(2.4GHz 쿼드 Cortex-A76, 8GB RAM)는 일부 워크로드에 여전히 강하다.

  • Pi-hole/AdGuard Home 같은 DNS 전용.
  • Octoprint·Print server.
  • HA OS(Home Assistant) 전용 박스.
  • K3s 3노드 클러스터로 학습용.

ARM 컨테이너 이미지가 거의 다 갖춰진 2026년에는 호환성 걱정이 거의 없다. SD카드를 NVMe(HAT)으로 바꾸는 게 안정성의 핵심.

6.3 NAS — Synology vs TrueNAS vs Unraid

데이터가 1TB를 넘어가면 NAS 영역에 들어선다.

  • Synology — 가장 쉽다. DSM이 정말 잘 만들어졌다. 단, 하드웨어 가성비 의문. 2025년 일부 모델에서 자사 디스크 강제 정책이 도입되며 평이 흔들렸다.
  • TrueNAS Scale — 데비안 + ZFS + Kubernetes 기반. 강력하지만 학습 곡선 있음.
  • Unraid — JBOD + 패리티의 유연성. 디스크를 한 개씩 늘려갈 수 있다는 게 강점. 셀프호스팅 진영에서 가장 사랑받는 NAS OS.
  • OpenMediaVault — 데비안 + 웹UI. 가벼움.

홈랩 표준 조합: Unraid 또는 TrueNAS Scale 한 대 + N100 미니PC 한 대 + Pi 한 대. "NAS는 스토리지, 미니PC는 컴퓨트" 분업이 깔끔하다.

6.4 중고 엔터프라이즈 — Dell·HP·Lenovo 1L PC

200달러대에 i5/i7·16GB·SSD 박힌 Dell OptiPlex 7060·Lenovo M720q·HP EliteDesk가 시장에 흘러나오면서, 미니PC 두 번째 선택지로 자리 잡았다. r/homelabsales가 늘 활발.

6.5 Pi-KVM / TinyPilot — 원격 KVM

서버를 한번 켜놓으면 평생 안 만질 것 같지만, BIOS 들어갈 일이 생긴다. Pi-KVM·TinyPilot은 Raspberry Pi에 HDMI 캡처·USB 에뮬레이션을 얹어 IP KVM을 만들어준다. 100달러대 부품으로 IPMI/iLO 같은 경험.

홈서버를 "절대 안 만나는" 친구 집·부모님 집·사무실 모서리에 두는 사람에게는 필수에 가깝다.

6.6 UPS — 정전·서지 보호

홈서버를 진지하게 굴린다면 작은 UPS(APC Back-UPS·Cyber Power) 한 대는 거의 필수. 200달러대에 정전 30분 버티고, 서지 보호기능까지. 디스크 데이터 안전이 직접 좌우된다.


7장 · 위협 모델 — 공격받지 않으려면

"내 서버는 아무도 안 봐" 는 통하지 않는다. 인터넷에 노출된 22번 포트는 5초 안에 봇이 두드린다. 2026년의 셀프호스팅 위협 모델은 다음 가정으로 시작한다.

공개 포트는 정찰 대상이다. 가급적이면 0개. 어쩔 수 없으면 1개. 그 외는 메시 뒤에.

7.1 노출 패턴 다섯 가지

패턴공격 표면추천도
가정용 라우터에 포트포워딩 80/443/22높음 (전 세계가 본다)비추천
Cloudflare Tunnel중간 (CF가 게이트)권장
Tailscale Funnel중간 (Tailscale이 게이트)권장
Tailscale 전용(공개 노출 X)낮음 (계정 손상만)강추
에어갭 + USB 전송거의 0마니아

기본 원칙은 "비공개로 시작해서, 꼭 필요한 것만 공개로 승격" 이다.

7.2 Cloudflare Tunnel

cloudflared 데몬을 홈에 깔고 Cloudflare로 아웃바운드 터널 하나만 연다. Cloudflare의 엣지가 도메인을 받고 터널 안으로 트래픽을 흘려넣는다. 공유기 포트 0개로 공개 호스팅 가능.

장점: 무료 플랜, DDoS 보호, Cloudflare Access(Zero Trust)로 SSO 부가, IP 가리기. 단점: Cloudflare가 트래픽을 본다(TLS 종단), 라이브 스트리밍은 약관 위반 영역.

7.3 Tailscale Funnel

Tailscale 본인 도메인(xxx.ts.net)으로 공개. TLS는 Let's Encrypt를 Tailscale이 자동. Cloudflare보다 단순하지만, 무료 플랜의 트래픽 한도가 있고, 자기 도메인은 못 쓴다(2026년 기준).

7.4 외부 노출이 꼭 필요한 서비스 분류

  • 공개해야 함: 블로그·포트폴리오 사이트·OAuth 콜백을 받는 서비스·온라인 신청 양식.
  • 링크 공유만으로 충분: Plausible 임베드 대시보드(공개 페이지 옵션 사용)·미디어 라이브러리 게스트 링크.
  • 절대 공개 금지: Vaultwarden·Authentik·관리자 UI·Forgejo 어드민·Coolify 대시보드·DB 직접 노출.

7.5 항상 켜두는 기본기

  • SSH는 Tailscale SSH로(공개 포트 22 닫기).
  • 컨테이너는 호스트 포트가 아닌 Docker network로 묶고, Traefik/Caddy가 게이트.
  • 자동 보안 업데이트(unattended-upgrades, watchtower 신중히).
  • 백업이 복구 테스트까지 한 사이클을 돈 적이 있어야 백업이다.
  • 비상 키(Bitwarden Emergency Access, Vaultwarden Emergency Access) 설정.
  • 2FA를 자체 vault에만 두는 단일 실패점을 피한다(YubiKey나 별도 vault에 백업).

7.6 무엇이 잘못되는가 — 실제 사고 사례 패턴

  • 외부 노출된 Plex/Jellyfin 인증 우회 CVE — 1년에 한 번씩 터진다.
  • Vaultwarden 어드민 토큰을 환경변수로 평문 보관 → 백업 노출.
  • Forgejo runner 토큰 노출 → 임의 빌드 실행.
  • Synology 디스크스테이션 사용자 비번 약함 + 외부 노출 → 랜섬웨어.
  • docker run --network host → 내부망 전면 노출.

핵심은 단순하다 — 외부 노출을 줄이고, 내부 메시 뒤로 숨기고, 비밀번호와 키는 한 곳에 모으되 그 한 곳을 가장 강하게 지킨다.


8장 · 무엇을 셀프호스팅하고 무엇은 하지 말 것인가

홈랩의 가장 위험한 함정은 "다 가능하다" 의 환상이다. 가능한 것과 해야 하는 것은 다르다.

카테고리셀프호스팅 권장?이유
사진 라이브러리(Immich)강추가족 추억은 절대 잃으면 안 된다 → 자기가 책임
비밀번호(Vaultwarden)강추가장 핵심적인 자산, 외부 의존도 0
노트·문서·Drive 대체추천데이터 주권의 본진
미디어 서버(Jellyfin)추천가성비 압도, 트랜스코딩 GPU 필요 시 주의
분석(Umami/Plausible)추천GA4 대체, 쿠키 배너 사라짐
RSS·읽기·책갈피추천가볍고 데이터 가치 큼
Git 호스팅(Forgejo)추천 (취미)회사 코드는 회사 정책에 따라
자동화(n8n)·홈오토추천사적 흐름은 외부에 둘 이유 없음
DNS·광고 차단(Pi-hole)강추가성비·체감 즉시
메일 서버 자체 호스팅비추천평판·DKIM·SPF·블랙리스트 지옥
결제·신원·법적 의무비추천컴플라이언스·감사 부담
회사용 SSO·디렉토리상황작은 팀이면 Authentik 가능, 본격은 Okta/Entra
채팅·메신저(Matrix)신중친구 모두를 옮길 수 있는가?
LLM 추론 서버(Ollama 등)취미 추천프로덕션은 GPU·튜닝 비용
화상회의(Jitsi)가벼운 용도본격은 SaaS가 낫다

한 줄 원칙 두 가지:

  1. 운영 부담 ≤ 효용 일 때만 셀프호스팅한다. 메일이 대표적 반례.
  2. 데이터 가치가 클수록 자기 통제 가치가 크다. 사진·비밀번호·일기는 본인이 책임지는 게 맞다.

9장 · 비용 계산 — 정직하게

홈랩의 매력 중 하나는 "AWS 청구서가 사라진다" 다. 정확한 비교를 위해 1년 표를 그려본다.

항목클라우드홈랩(N100 1대)
컴퓨트 (월)$30 (t3.medium)$1.5 (전기)
스토리지 (1TB)$23 (S3 Std)$5 (NVMe 분할 상각)
외부 대역폭 (월)$50+ (TB 단위)$0 (가정 인터넷)
가용성 (월)99.99%99% (정전·재부팅)
운영 시간 (월, 시간)24~10 (초반) → 2 (안정 후)
초기 투자$0250(미니PC)+250(미니PC) + 80(UPS)
1년 총비용$1,200+330(1년차)330 (1년차) → 80 (2년차~)

숨은 비용: 자기 시간. 처음 한 달은 깔고 부수는 데 30시간 정도 든다. 그 다음부터는 월 1~2시간. "이 시간이 즐겁냐"가 결정 기준이다.

숨은 가치: 일에 쓰는 클라우드 스킬을 집에서 같은 형태로 연습. 회사에서 본 ArgoCD·Prometheus·Traefik을 집에서 굴리면 이해도가 다른 차원으로 올라간다.


10장 · 시작 레시피 — 한 주 안에 50% 도달하기

처음 들어오는 사람을 위한 7일 로드맵.

1일차 — 하드웨어와 OS

  • N100 미니PC 한 대 주문(혹은 중고 1L PC).
  • Ubuntu Server 24.04 LTS 또는 Debian 12 설치.
  • SSH 비번 로그인 끄고 키 인증만.

2일차 — Tailscale

  • 호스트 + 노트북 + 핸드폰에 Tailscale 깔고 같은 계정으로 로그인.
  • MagicDNS 켜고 Tailscale SSH 켠다.
  • 라우터 포트 22 닫는다.

3일차 — Docker + Traefik/Caddy

  • Docker + Docker Compose 설치.
  • Traefik 또는 Caddy 한 컨테이너로 리버스 프록시 + 자동 TLS(Tailscale 인증서) 깔기.

4일차 — Coolify 또는 Dokku 1개 선택

  • Coolify면 한 줄 설치 스크립트.
  • Dokku면 apt 한 줄 + 첫 앱 git push.
  • 자기 사이드 프로젝트 한 개 배포해본다.

5일차 — 핵심 자가 호스팅 앱 셋

  • Vaultwarden — 비밀번호.
  • Immich — 사진(가족 단위 가치).
  • Pi-hole 또는 AdGuard Home — DNS.

6일차 — 모니터링과 백업

  • Beszel + Uptime Kuma + Dozzle 설치.
  • Restic으로 /var/lib/docker/volumes 와 사진 볼륨을 B2/R2로 매일 백업.
  • 복구 한 번 해본다(이게 진짜 백업).

7일차 — 안티패턴 점검과 휴식

  • 외부에 노출된 포트가 0개인지 확인.
  • Vaultwarden Emergency Access·복구 시드를 종이로 출력해서 어딘가에.
  • 다음 주에 추가할 앱 하나 정해두고 끝.

이 단계에서 80% 사람들은 멈춘다. 그 다음은 위시리스트를 천천히 늘려가는 단계 — Forgejo, Plausible, n8n, Home Assistant, Jellyfin…


에필로그 — 셀프호스팅은 다시 정상이 되었다

2026년의 풍경을 정리하면 이렇다.

  • Tailscale이 NAT·인증서·VPN 지옥을 사라지게 했다.
  • Coolify·Dokku가 Heroku 경험을 집으로 가져왔다.
  • Immich·Vaultwarden·Forgejo·Plausible이 빅테크 의존을 한 자루씩 끊었다.
  • N100 미니PC 한 대로 클라우드 청구서 0이 가능해졌다.
  • selfh.st·r/selfhosted 같은 커뮤니티가 친구 같은 멘토 역할을 한다.

이건 "회피"가 아니라 다시 균형을 찾는 흐름 이다. 클라우드가 사라지지는 않는다 — 회사 인프라, 글로벌 트래픽, 일하는 SaaS는 여전히 클라우드. 하지만 개인의 데이터와 도구는 다시 책상 밑에서 산다.

14개 항목 체크리스트

  1. 메시 VPN(Tailscale 또는 동등품)이 깔려 있는가?
  2. 라우터에 공개로 열린 포트가 22번 닫혔는가?
  3. 모든 SSH가 키 인증 + Tailscale SSH로 가는가?
  4. Vaultwarden(혹은 동등) 에 모든 비번이 들어와 있는가?
  5. 비번 vault의 Emergency Access·복구 시드가 종이로 어딘가에 있는가?
  6. 데이터가 최소 2개 매체에 백업되고, 그중 하나는 오프사이트인가?
  7. 백업에서 한 번이라도 복구를 성공시켜 봤는가?
  8. 사진·문서 같은 핵심 자산이 어디 있는지 가족이 알고 있는가?
  9. 모니터링이 켜져 있고 알람이 자기 핸드폰으로 가는가?
  10. 자동 보안 업데이트가 돌아가는가?
  11. UPS가 30분 이상 버티는가?
  12. 외부에 노출된 단 한 가지 도메인의 인증 흐름을 그릴 수 있는가?
  13. "내가 1년간 못 들어와도 누가 어떻게 살릴까" 를 적어둔 종이가 있는가?
  14. 시작했을 때보다 매주 들어가는 시간이 줄고 있는가?

안티패턴 10가지

  1. 첫 주에 앱 20개 깐다 — 운영 부담만 30개.
  2. 라우터에 22·80·443 포트포워딩 — 5분 안에 봇이 두드린다.
  3. Vaultwarden 어드민 토큰을 평문으로 환경변수에 — 그 환경변수를 백업.
  4. 백업을 한 번도 복구해보지 않는다 — 그건 백업이 아니다.
  5. 모든 서비스에 같은 SSO 비번 — 한 곳 뚫리면 전부.
  6. 컨테이너를 --network host 로 — 격리가 사라진다.
  7. 모니터링이 자기 호스트 위에서만 — 호스트가 죽으면 알람도 죽는다.
  8. 메일을 셀프호스팅한다 — 평판·DKIM 지옥.
  9. UPS 없이 SSD에 의존 — 정전 한 번에 파일시스템 손상.
  10. 가족에게 알리지 않는다 — 본인이 못 들어오면 사진이 다 잠긴다.

다음 글 예고

다음 글 후보: Kubernetes 홈랩 — K3s·ArgoCD·Cilium으로 작은 클러스터 굴리기, Immich 깊이 — ML 파이프라인·외부 라이브러리·B2 백업, Tailscale ACL 실전 — 신원 기반 방화벽 설계.

"클라우드는 회사용. 책상 밑은 내 것."

— 2026년의 셀프호스팅 르네상스, 끝.


참고 / References