wireguard

wireguard-tools: Configure WireGuard VPN Tunnels

WireGuard’s userspace tools configure and manage WireGuard tunnels across Linux, BSD, macOS, Windows, and Android. This is the GitHub mirror; the official repository is hosted at git.zx2c4.com.

Stars
727
Forks
314
Stars, last 8 days
+3
Last commit
5 months ago
Contributors
33

Our take

Quietno commits in the last 90 days and no release in a year

Health score

27/100

How it is scored
Activity
20
Community
41
Issues
21
Pull requests
no data

+3 stars in the last 8 days

This is the core, cross-platform userspace toolkit for WireGuard, but its quiet recent activity and highly concentrated contributions are worth factoring into adoption plans.

Good fit if

  • You need the standard wg utility or the optional wg-quick workflow for WireGuard tunnel configuration.
  • You want a small C project that builds with a C compiler and libc and supports your target operating system.
  • You can work with GPLv2-licensed software and the project’s current maintenance signals suit your needs.

Look elsewhere if

  • You need a continuously active project: there have been no commits in the last 90 days and no release in over a year.
  • Your deployment requires recent issue resolution; no issues were closed in the last 90 days, and the measured contributor activity is heavily concentrated in one person.
  • You need a full network-management application rather than command-line tools and a convenience script. The README recommends integrating wg or the direct API for that purpose.
All health signals
Last commit2026-05-06 (5 months ago)
Commits, last 90 days0
Releases, last 12 months0
Contributors33 (top contributor: 91% of commits)
Issues closed, last 90 days0
Project age6 years

Checked on 2026-10-10 with the GitHub API.

Overview

wireguard-tools provides the userspace utilities for configuring WireGuard tunnels. Its main tools are wg, which manages WireGuard interfaces and configuration, and wg-quick, a convenience script that reads extra settings from wg-style configuration files and brings an interface up or down.

The project is intended for people administering WireGuard on supported operating systems, or developers integrating WireGuard into network-management workflows. The GitHub repository is a mirror; the official source is at git.zx2c4.com.

Key Features

  • Provides the wg command-line utility for configuring WireGuard.
  • Includes wg-quick, a Bash script for quick interface setup from configuration files.
  • Supports Linux, OpenBSD, FreeBSD, macOS, Windows, and Android.
  • Offers optional systemd units for wg-quick.
  • Can install Bash completion files when enabled or detected.
  • Includes scripts and examples under contrib/ for adapting or extending workflows.
  • Builds with a C compiler and libc, without other stated dependencies.

Use Cases

  • A system administrator can configure WireGuard interfaces directly with wg on a supported operating system.
  • A user who wants a simple way to bring up a tunnel from a configuration file can use wg-quick where Bash is available.
  • A Linux administrator using systemd can install the provided wg-quick units to manage tunnels through systemd.
  • A network-manager developer can use wg or the direct WireGuard API as a basis for integration instead of relying on wg-quick.

What you need

Detected in the repository

  • C (main language on GitHub)

License in plain words

GPL-2.0strong copyleft

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the license notice
  • Share your changes: yes, the full source of anything you distribute that includes it, under the GPL

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Build from the source directory:

cd src
make

See the README for installation options and details. The official repository is the canonical source.

Alternatives

  • tailscale: Tailscale builds a managed mesh VPN with a daemon and CLI, while wireguard-tools configures WireGuard interfaces and peers directly.
ProjectLanguageLicenseStarsStatus
wireguard-toolsCGPL-2.0727Quiet
tailscaleGoBSD-3-Clause37.3kActive

Considerations

The project is marked quiet by its measured activity: there have been no commits in the last 90 days and no release in a year. Although it has contributors, most of the code comes from one person, and no issues were closed in the last 90 days. Teams adopting it should consider how they will handle urgent maintenance needs.

wg-quick is explicitly described as a quick-and-dirty Bash script, not a replacement for a full network manager. Its use is optional, as are systemd units and Bash completion. The project is GPLv2, so account for that license when distributing or incorporating the tools.

Found this useful?

Share it with someone who would like wireguard-tools.

Comparisons