Le VPN (Headscale / Tailscale)
Le VPN maille toutes les zones et les machines distantes : Headscale 🡕 coordonne (sur le HCS), Tailscale 🡕 est le client sur chaque nœud. Vue d’ensemble dans Réseau.
Activer le VPN
Section intitulée « Activer le VPN »Activer la coordination et déclarer le HCS (profile: hcs) suffit :
network: coordination: enable: true hostname: "hcs" domain: "headscale"Les rôles se déduisent du profil de chaque hôte :
- HCS : coordination du maillage (Headscale).
- Passerelle : subnet router + exit node : publie le sous-réseau de sa zone.
- Autres nœuds : clients Tailscale.
Enregistrer une passerelle
Section intitulée « Enregistrer une passerelle »-
Sur le HCS : créer l’utilisateur d’attache et une clé
Fenêtre de terminal just enter hcssudo headscale users create nix --display-name "Nix Admin" --email "nix@domain.tld"sudo headscale preauthkeys create --reusable --expiration "1d" --user 1 -
Renseigner la clé dans les secrets
Fenêtre de terminal just sops # édite usr/secrets/secrets.yaml → clé tailscale/authKeyLa passerelle s’enregistre ensuite automatiquement (au prochain
just apply). -
Sur la passerelle : annoncer le sous-réseau
Fenêtre de terminal sudo tailscale set --advertise-routes 10.0.0.0/16 --advertise-exit-node \--accept-routes --accept-dns=false --ssh --snat-subnet-routes=false -
Sur le HCS : approuver les routes
Fenêtre de terminal sudo headscale nodes list # repérer l'ID de la passerellesudo headscale nodes approve-routes --identifier <id> --routes 10.0.0.0/16
Administration
Section intitulée « Administration »La commande headscale (alias h = sudo headscale) sur le HCS :
sudo headscale users list # utilisateurssudo headscale nodes list # clients connectéssudo headscale nodes routes # routes annoncées / approuvéesAccès depuis l’extérieur
Section intitulée « Accès depuis l’extérieur »Pour rejoindre le réseau hors d’une zone, voir Se connecter depuis l’extérieur.