What is Headscale?
Headscale is an open-source, self-hosted implementation of the Tailscale control server. It lets you run your own coordination server for a private WireGuard-based mesh network, so your devices can connect securely to each other without depending on Tailscaleβs hosted control plane, while still using the standard Tailscale clients.
β‘ Key Features of Headscale
π Self-hosted Control Plane
Run your own coordination server, no reliance on a third-party hosted service.
π WireGuard Mesh
Fast, encrypted peer-to-peer connectivity between all your devices.
π± Standard Clients
Works with the official Tailscale clients on desktop, mobile and servers.
π ACL Policies
Fine-grained access control rules to segment and secure your network.
π― Why Headscale?
- Full control: Own the coordination server and your network data
- No vendor lock-in: Open source alternative to the hosted control plane
- Uses official clients: Keep the polished Tailscale app experience
- Lightweight: A single Go binary that is easy to deploy
π Highlights
- Coordination Server: Self-hosted Tailscale control plane
- WireGuard: Modern, encrypted mesh networking
- ACLs: Policy-driven access control
- Multi-user: Namespaces for separating devices and users
π¦ Installation from deb.griffo.io
Step 1: Add Repository
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt updateπ There is an always-free mirror. deb-free.griffo.io serves packages free forever, no account, no subscription, at most 2 months behind upstream, security fixes immediately. It currently carries cliamp, Ghostty, lazydocker, Oh My Posh and Zed; Headscale is not one of them, so the repository above is the only way to get it today, ask and it can be enrolled.
π§© About the extrepo option. extrepo is Debian's own tool for external repositories: it writes the sources file and installs the signing key for you, checking the key against signed metadata first. This repository is registered with it as griffo, and the always-free mirror as griffo-free, so on Debian (bookworm, trixie, forky and sid) the commands above are the whole setup.
extrepo sets up the sources file and the key only, so a subscription's credentials still go in /etc/apt/auth.conf.d/deb.griffo.io.conf. Ubuntu is not covered, because extrepo publishes metadata for Debian suites only: there, use the sudo or root commands.
Step 2: Install headscale
# Install latest headscale
sudo apt install headscale
# Verify installation
headscale version# Install latest headscale
apt install headscale
# Verify installation
headscale versionπ― Basic Usage Examples
# Show version
headscale version
# Create a user
headscale users create alice
# Generate a pre-auth key for a user
headscale preauthkeys create --user alice --reusable
# List connected nodes
headscale nodes list
# Serve the control server
headscale serveπ Why Choose deb.griffo.io?
- Official Debian: Often months behind, missing latest features
- deb.griffo.io: Latest version within hours of release
- Manual Installation: Manual downloads and PATH setup required
- Our Repository: Pre-built, ready-to-use packages
- β Latest Features: Get newest Headscale features and improvements immediately
- β No Manual Setup: Pre-built binaries, installed and updated through apt
- β Automatic Updates: Packages updated within hours of upstream releases
- β Proper Dependencies: Correctly packaged with all required libraries
- β Multi-Distribution: Works on Bookworm, Trixie, and Sid
- β Easy Maintenance: Simple apt commands for updates
π¦ Package Build Repository
The Debian packages are automatically built and maintained in this GitHub repository:
- π headscale-debian - Latest release builds
π Related Packages
Also available from deb.griffo.io:
- Garage - S3-compatible distributed object storage
- Forgejo - Self-hosted lightweight software forge
- k9s - Terminal UI for Kubernetes clusters
π Support This Project
If this repository saves you time and effort, please consider supporting it!