VPN avec Headscale : un serveur Tailscale auto-hébergé

Florian BURNEL - ITConnect - 08/05
Dans ce tutoriel, découvrez comment installer un serveur Headscale pour auto-héberger votre serveur de contrôle Tailscale et avoir la maitrise de votre VPN.

Sommaire

  • I. Présentation
  • II. Pourquoi choisir Headscale à la place de Tailscale ?
  • III. Installation du reverse proxy Nginx
  • IV. Mise en œuvre de Headscale sur Linux
    • A. Installation de Headscale
    • B. Configuration de Headscale
    • C. Créer un utilisateur
    • D. Enregistrer ses premiers appareils
    • E. Ajouter une route
    • F. Gérer les ACL
  • V. Conclusion

I. Présentation

Vous appréciez Tailscale, la solution de VPN Mesh basée sur WireGuard ? Alors, vous allez probablement apprécier Headscale ! Comme vous le savez, l'utilisation de Tailscale implique de s'appuyer sur les serveurs de Tailscale pour distribuer les informations aux clients connectés. Pour ceux qui veulent avoir une maitrise complète de l'infrastructure, et ne pas dépendre de ce tiers, sachez qu'une solution existe : Headscale.

  • Cliquez ici pour regarder la vidéo sur YouTube

Ce projet open source permet de ne pas utiliser l'infrastructure Tailscale puisque Headscale vous permet d'auto-héberger votre propre serveur de contrôle Tailscale. Ainsi, vous continuez à utiliser les applications Tailscale officielles, mais c'est votre serveur Headscale qui sera sollicité. Dans tous les cas, des tunnels WireGuard sont utilisés et le trafic réseau ne passe pas par le serveur Headscale (il sert à distribuer les clés, les routes et les ACLs).

Dans ce tutoriel, nous allons apprendre à déployer la solution Headscale sur un serveur Linux (Debian, pour ma part), sans utiliser Docker. C'est une précision importante, car les deux types de déploiement sont supportés : avec ou sans Docker. Cette solution peut être utilisée dans un cadre personnel ou professionnel, selon les besoins.

L'exemple ci-dessous illustre le besoin suivant : vous souhaitez accéder à distance, de façon sécurisée, à votre réseau et à vos équipements. Vous pouvez installer Tailscale sur vos appareils (ordinateurs, smartphones, tablettes, etc.) et accéder à ces équipements via le nœud Tailscale "Gateway" (car il va diffuser une route). Vous pourriez aussi interconnecter deux réseaux, tout en permettant les accès depuis des équipements nomades. La sécurité sera assurée par les ACL qui vont permettre de déterminer qui peut communiquer avec qui.

Dans le cadre de cette démonstration, une machine sous Debian, nommée SRV-HEADSCALE sera utilisée. Il s'agit d'un serveur virtuel dans le Cloud Azure : le serveur Headscale doit être accessible à tout moment pour que le service soit opérationnel, ce choix me semble donc judicieux. Vous pouvez prendre un VPS chez un autre fournisseur, par exemple. Le service sera accessible via le domaine suivant : headscale.it-connect.cloud.

S...
[Courte citation de 8% de l'article original]

Loading...