wireguard-tools: Essential Utilities for WireGuard VPN Configuration

wireguard-tools: Essential Utilities for WireGuard VPN Configuration

Summary

wireguard-tools provides the core userspace utilities for configuring WireGuard VPN tunnels across multiple operating systems. This project includes the `wg` and `wg-quick` tools, simplifying the setup and management of secure network connections. It supports Linux, OpenBSD, FreeBSD, macOS, Windows, and Android, making it a versatile solution for WireGuard users.

Repository Info

Updated on June 4, 2026
View on GitHub

Tags

Click on any tag to explore related repositories

Introduction

wireguard-tools provides the essential userspace utilities for configuring WireGuard VPN tunnels. This project includes the primary command-line tools, wg(8) and wg-quick(8), which are crucial for setting up and managing WireGuard interfaces. It offers broad compatibility, supporting various operating systems including Linux, OpenBSD, FreeBSD, macOS, Windows, and Android. While this GitHub repository serves as a mirror, the official development takes place at git.zx2c4.com/wireguard-tools.

Installation

Building and installing wireguard-tools is straightforward.

To build the tools:

cd src
make

There are no external dependencies beyond a standard C compiler and libc.

To install the tools:

make install

The installation process can be customized using several environment variables. For instance, PREFIX defaults to /usr, BINDIR to $(PREFIX)/bin, and MANDIR to $(PREFIX)/share/man. Other variables like WITH_BASHCOMPLETION, WITH_WGQUICK, and WITH_SYSTEMDUNITS allow you to control the installation of bash completion files, the wg-quick(8) script, and systemd units, respectively. These can be set to yes or no to force or prevent their installation, overriding auto-detection.

Examples

The contrib/ subdirectory within the repository contains various scripts and examples. While not all are intended for direct production use, they serve as valuable inspiration and starting points for developing custom tools or integrating WireGuard into existing systems. Each subdirectory typically includes its own README for more specific guidance.

Why Use It

wireguard-tools is indispensable for anyone using WireGuard, offering the foundational command-line interface to manage VPN connections. Its cross-platform support ensures a consistent experience across different environments. The wg-quick utility is particularly useful for rapid deployment and configuration, providing a simple way to get WireGuard tunnels up and running with minimal effort. For advanced users and distributors, the flexibility to integrate wg(8) directly into network managers or to customize installation options makes it a robust and adaptable solution.

Links