Un mesh VPN e una dintre uneltele care fac discret totul mai ușor: laptopul, serverul de acasă, telefonul și VPS-urile se văd între ele pe adrese private, oriunde s-ar afla. Problema cu rețelele mesh VPN găzduite e serverul de coordonare — o companie ține harta fiecărui dispozitiv pe care îl ai. Headscale e un înlocuitor open-source pentru acel server de control. Îl rulezi pe un VPS mic, folosești în continuare aplicațiile client obișnuite, iar harta e a ta.
Cum se leagă totul
- Headscale (pe VPS-ul tău) împarte adrese, distribuie cheile publice și aplică ACL-urile tale.
- Clienții sunt aplicațiile Tailscale standard, îndreptate spre serverul tău.
- Traficul merge de la dispozitiv la dispozitiv prin WireGuard. Serverul de control nu-l transportă niciodată.
Ultimul punct e motivul pentru care merge un plan minuscul: VPS-ul răspunde doar la cereri mici de coordonare.
De ce ai nevoie
- Nano-IP ($8/lună) — 2 vCPU și 1 GB RAM înseamnă mult mai mult decât folosește Headscale.
- Un IPv4 dedicat și un domeniu, de exemplu
hs.example.com. Dispozitivele vorbesc cu serverul de control prin HTTPS, deci VPS-ul trebuie să accepte 443 de intrare — planurile NAT nu fac asta (detalii).
Instalare (Debian 12 / Ubuntu 24.04)
Ia .deb-ul curent de pe pagina de release-uri Headscale de pe GitHub — înlocuiește versiunea cu cea mai recentă:
HS_VER=0.26.1
wget -O headscale.deb \
"https://github.com/juanfont/headscale/releases/download/v${HS_VER}/headscale_${HS_VER}_linux_amd64.deb"
apt install -y ./headscale.deb caddy
Editează /etc/headscale/config.yaml — cele două linii care contează:
server_url: https://hs.example.com
listen_addr: 127.0.0.1:8080
Pune Caddy în față pentru HTTPS:
cat > /etc/caddy/Caddyfile <<'EOF'
hs.example.com {
reverse_proxy 127.0.0.1:8080
}
EOF
systemctl enable --now headscale
systemctl reload caddy
Adaugă un utilizator și un dispozitiv
headscale users create alice
headscale users list # note the user's ID
headscale preauthkeys create --user 1 --expiration 24h
Versiunile mai vechi primesc în --user numele utilizatorului, nu ID-ul; headscale preauthkeys create --help îți spune ce așteaptă a ta.
Pe un dispozitiv Linux:
tailscale up --login-server https://hs.example.com --authkey YOUR_KEY
Pe telefoane și desktopuri, aplicația Tailscale te lasă să setezi în setări un server de control propriu. Rulează headscale nodes list pe VPS și dispozitivul tău ar trebui să apară acolo.
Relee și traversarea NAT
Majoritatea dispozitivelor se conectează direct. Când două dintre ele nu pot (rețele mobile stricte, NAT dublu), traficul trece printr-un releu DERP. Din start, Headscale folosește releele publice Tailscale — ele văd doar pachete criptate. Dacă vrei să nu fie nimic extern pe traseu, activează releul integrat în config.yaml (derp.server.enabled: true) și deschide UDP 3478. Traficul retransmis intră atunci în lățimea de bandă a VPS-ului.
Limite cinstite
Nu există un dashboard web oficial: utilizatorii, cheile și rutele sunt comenzi CLI (în regulă după ce le-ai dat de două ori). Funcțiile mai noi ale serviciului găzduit apar în Headscale mai târziu, dacă apar. Iar serverul de control devine responsabilitatea ta — dacă e căzut, conexiunile existente merg mai departe, dar dispozitivele noi nu se pot alătura și cheile nu se pot reîmprospăta. Fă-i backup: toată starea e în /var/lib/headscale.
Pentru un homelab, o familie sau o echipă mică ce vrea să-și scoată harta dispozitivelor de pe serverele terților, e una dintre cele mai bune folosiri ale unui VPS de $8.
Legate
- Găzduiește un VPN WireGuard — WireGuard simplu, dacă ai nevoie de un singur tunel
- VPS pentru VPN
- VPS pentru accesul de la distanță la Home Assistant
Comentarii
Încă nu există comentarii. Fii primul.