Ak máš doma server ktorý beží 24/7 a začínaš ho poriadne využívať, skôr či neskôr narazíš na rovnaký problém. Chceš pristupovať k svojim aplikáciám odkiaľkoľvek, cez pekné domény, cez HTTPS. Zdanlivo jednoduchá požiadavka — v praxi hodiny konfigurácie, expirácie certifikátov a jeden port 443 ktorý nestačí pre všetkých.
Začiatok: Let's Encrypt a prvé certifikáty
Keď som začal aktivovať aplikácie na svojom serveri, rýchlo som zistil že bez HTTPS to nejde. Na Synology DSM je integrácia s Let's Encrypt priamo vstavaná — bezplatné SSL certifikáty. Fungovalo to. Chvíľu.
Postupne som pridal reverse proxy aby som nemusel pamätať porty — 192.168.1.101:8080 sa stalo nas.jurek.xyz. Elegantné. Až kým som nezačal pridávať ďalšie aplikácie, každá so svojou subdoménou, každá s vlastným pravidlom.
Prvý veľký problém: port 443 obsadený
Zlom prišiel keď som nainštaloval virtuálny server ktorý potreboval port 443. Port bol obsadený — server ho využíval pre reverse proxy. Nemohol som mať dve služby na rovnakom porte.
Mesiace som hľadal riešenie. Skúšal som rôzne konfigurácie, prestavoval firewall, experimentoval s portami. Let's Encrypt mi prestal automaticky obnovovať certifikáty. Vznikol chaos.
Toto nie je problém Synology. Je to problém každého kto prevádzkuje viac služieb na jednom serveri a chce ich vystaviť von cez HTTPS.
Riešenie: Cloudflare Tunnel
Cloudflare Tunnel funguje opačne ako klasický prístup. Neotváraš porty na routeri smerom von — namiesto toho si nainštaluješ agenta (cloudflared) ktorý sám nadväzuje spojenie von na Cloudflare. Cloudflare potom presmeruje požiadavky cez tento tunel k tebe domov. Router nemusí vedieť nič. Port forwarding neexistuje. Certifikáty sa starajú samé.
Inštalácia: 2 minúty
Čo potrebuješ:
- Zariadenie bežiace 24/7 s Docker (Synology NAS, Raspberry Pi, Linux PC)
- Účet na Cloudflare (zadarmo)
- Doménu napojenú na Cloudflare DNS
- SSH prístup k zariadeniu
Čo som získal
- Žiadne certifikáty — Cloudflare ich vystavuje a obnovuje automaticky
- Žiadny port forwarding — router netuší že niečo beží
- Žiadna lokálna reverse proxy — tunel to rieši za teba
- Funguje raz nastavené — za mesiace som sa k tomu nemusel vrátiť
Ak raz beží, beží. To je pre mňa najväčšia hodnota.
Je to pre každého?
Cloudflare Tunnel má zmysel ak chceš pristupovať k domácim službám bezpečne z vonku, nechceš sa starať o certifikáty a port forwarding, máš zariadenie s Dockerom a máš doménu.
Pre mňa bol Cloudflare Tunnel zlomovým momentom. Ušetril mi hodiny konfigurácie a dal mi pokoj. Ak si v podobnej situácii — vyskúšaj to. Stojí to 2 minúty.
Pripravil som kompletný návod — od prenesenia domény do Cloudflare, cez aktiváciu Zero Trust a vytvorenie Docker siete, až po public hostname routes pomocou container name namiesto IP adries.
Cloudflare Tunnel — kompletný návod →