tailscale

    tailscale/tailscale

    #64 this week

    The easiest, most secure way to use WireGuard and 2FA.

    authentication
    networking
    2fa
    oauth
    sso
    tailscale
    vpn
    Go
    BSD-3-Clause
    37.3K stars
    3.3K forks
    37.3K GitHub watchers
    Updated 10/8/2026
    View on GitHub

    Build with Backblaze B2

    SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.

    Explore Backblaze Labs

    Loading star history...

    Use Cases & Benefits

    • Provides a secure, easy-to-use private network solution using WireGuard and two-factor authentication.
    • Simplifies VPN setup and management across multiple platforms with strong security and seamless connectivity.
    • Use for creating encrypted, private networks for remote teams to securely access internal resources.
    • Use for integrating multi-factor authentication and single sign-on in VPN connections to enhance security.
    • Use for deploying cross-platform VPN clients on Linux, Windows, macOS, and BSD systems with minimal configuration.

    About tailscale

    Tailscale

    https://tailscale.com

    Private WireGuard® networks made easy

    Overview

    This repository contains the majority of Tailscale's open source code. Notably, it includes the tailscaled daemon and the tailscale CLI tool. The tailscaled daemon runs on Linux, Windows, macOS, and to varying degrees on FreeBSD and OpenBSD. The Tailscale iOS and Android apps use this repo's code, but this repo doesn't contain the mobile GUI code.

    Other Tailscale repos of note:

    For background on which parts of Tailscale are open source and why, see https://tailscale.com/opensource/.

    Using

    We serve packages for a variety of distros and platforms at https://pkgs.tailscale.com.

    Other clients

    The macOS, iOS, and Windows clients use the code in this repository but additionally include small GUI wrappers. The GUI wrappers on non-open source platforms are themselves not open source.

    Building

    We always require the latest Go release, currently Go 1.23. (While we build releases with our Go fork, its use is not required.)

    go install tailscale.com/cmd/tailscale{,d}
    

    If you're packaging Tailscale for distribution, use build_dist.sh instead, to burn commit IDs and version info into the binaries:

    ./build_dist.sh tailscale.com/cmd/tailscale
    ./build_dist.sh tailscale.com/cmd/tailscaled
    

    If your distro has conventions that preclude the use of build_dist.sh, please do the equivalent of what it does in your distro's way, so that bug reports contain useful version information.

    Bugs

    Please file any issues about this code or the hosted service on the issue tracker.

    Contributing

    PRs welcome! But please file bugs. Commit messages should reference bugs.

    We require Developer Certificate of Origin Signed-off-by lines in commits.

    See commit-messages.md (or skim git log) for our commit message style.

    About Us

    Tailscale is primarily developed by the people at https://github.com/orgs/tailscale/people. For other contributors, see:

    WireGuard is a registered trademark of Jason A. Donenfeld.

    Discover Repositories

    Search across tracked repositories by name or description