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 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 Ghostty, 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.
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 Ubuntu: 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 Jammy and Noble
- β Easy Maintenance: Simple apt commands for updates
π¦ Package Build Repository
The Ubuntu 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!