DevOps · Cloudflare · Zero Trust
Zero Trust для homelab: Cloudflare Tunnel і Access замість відкритих дашбордів
Внутрішній дашборд був публічно доступний через піддомен. Ось як я закрив його за допомогою Cloudflare Tunnel, Cloudflare Access і Tailscale.
Вихідна ситуація
У моєму homelab (Proxmox VE з LXC-контейнерами) працює дашборд зі списком усіх сервісів. Він був публічно доступний через піддомен — без логіну. Це типова діра в self-hosting: сервіс зручний, але будь-хто, хто вгадає чи знайде адресу, бачить усю картину.
Рішення з чотирьох блоків
- Cloudflare Tunnel як єдиний вхід. Тунель встановлює вихідне з’єднання з Cloudflare. Тому на роутері не потрібне проброшення портів, ззовні немає відкритих портів.
- Cloudflare Access як шар Zero Trust. Перед дашбордом стоїть політика Access: увійти може лише мій e-mail, вхід — за одноразовим PIN-кодом.
- Tailscale для всього приватного. Сервіси, які ніколи не мають бути публічними (наприклад, керування фото), доступні лише через мережу Tailscale на базі WireGuard.
- Регулярно перевіряти, що опубліковано. Справжнім приводом стала забута публікація.
Як я перевіряю, що насправді публічно
Головний висновок: важливий не лише сам сервіс, а й те, що публікують DNS і тунель. Мій чек-лист:
- У панелі Cloudflare, розділ Zero Trust → Tunnels: які Public Hostnames прописані?
- В Access → Applications: чи є політика в кожного публічного хоста?
- У DNS-записах: чи немає старих CNAME-записів на сервіси, яких уже не існує?
cloudflared tunnel list
cloudflared tunnel info <tunnel-name>
Головне правило: Zero Trust — це не «увімкнути інструмент», а свідомо вирішити для кожного доступу: публічно з логіном, приватно через Tailscale — або взагалі недоступно.
Результат
Дашборд тепер доступний лише після логіну, на роутері не відкрито жодного порту, а приватні сервіси повністю перебувають у мережі Tailscale. Одним дашбордом, що видає внутрішню інфраструктуру, стало менше.
Читати далі
Доступ · Безпека · Бекап
Безпечний доступ і бекапи домашнього сервера: Tailscale, Cloudflare Tunnel, vzdump
Домашній сервер хороший рівно настільки, наскільки хороші його доступ і бекапи. Мій принцип: жодного прокидання портів, кожен доступ — свідоме рішення, бекап щодня.
Self-hosting · Homelab · Приватність
Вихід із хмари: домашній сервер замість Google, iCloud та інших
Вдома в мене працює сервер на Proxmox із 15+ сервісами. Тут — які хмарні сервіси він замінює, чого це коштує (часу) і де краще залишитися в хмарі.
Proxmox · LXC · Homelab
Proxmox і LXC у homelab: які контейнери я запускаю і навіщо
Чотири контейнери, чотири ролі: як влаштований мій домашній сервер, які програми де працюють і як я розподілив сховище.
DevOps · CI/CD · Next.js
CI/CD для Next.js 15 на VPS: GitHub Actions, PM2 reload і Caddy
Ручний деплой був повільним і схильним до помилок. Сьогодні досить git push — без простою і без PaaS.
Ще з практики
Інші нотатки, кейси та проєкти — на головній сторінці.
Усі нотатки Кейс MeisterMeld Кейс PflegeOasis Кейс Kernbohr-Expert На головну
Коментарі
Долучайтеся до обговорення: коментарі працюють через GitHub Discussions (вхід через акаунт GitHub). Вміст GitHub/giscus завантажується лише після кліку. Конфіденційність