Windows [7, 8, 8.1, 10, 2012, 2016, 2019]

WireGuard for Windows is available from this site:

Download for 64-bit
Download for 32-bit

macOS [app store]

Download from App Store

Ubuntu Eoan [module & tools]

$ sudo apt-get install wireguard

Ubuntu via PPA [module & tools]

$ sudo add-apt-repository ppa:wireguard/wireguard
$ sudo apt-get update
$ sudo apt-get install wireguard

Android [play store & f-droid]

Download from Play Store
Download from F-Droid

iOS [app store]

Download from App Store

Debian [module, tools]

# echo "deb unstable main" > /etc/apt/sources.list.d/unstable.list
# printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' > /etc/apt/preferences.d/limit-unstable
# apt update
# apt install wireguard

Fedora [module & tools]

$ sudo dnf copr enable jdoss/wireguard
$ sudo dnf install wireguard-dkms wireguard-tools

Red Hat Enterprise Linux / CentOS [module & tools]

$ yum update -y
$ reboot # unless there were no updates
$ sudo curl -Lo /etc/yum.repos.d/wireguard.repo
$ sudo yum install epel-release
$ sudo yum install wireguard-dkms wireguard-tools

Mageia [module, tools]

$ sudo urpmi wireguard-tools

The kernel module is already part of the default kernel.

Arch [module, tools]

$ sudo pacman -S wireguard-tools wireguard-arch

Instead of wireguard-arch, one may choose wireguard-lts or wireguard-dkms+linux-headers, depending on which kernel is used.

OpenSUSE [module & tools]

$ sudo zypper addrepo -f obs://network:vpn:wireguard wireguard
$ sudo zypper install wireguard-kmp-default wireguard-tools

Slackware [module & tools]

$ wget && tar xzf WireGuard.tar.gz
$ cd WireGuard && OUTPUT=$(pwd) ./WireGuard.SlackBuild && sudo installpkg ./WireGuard-*.tgz

Alpine [module & tools]

# apk add -U wireguard-tools

You'll likely need to be on the edge repositories first, running a kernel from edge as well.

Gentoo [module & tools]

# emerge wireguard

Exherbo [module & tools]

# cave resolve -x wireguard

NixOS [module & tools]

boot.extraModulePackages = [ config.boot.kernelPackages.wireguard ];
environment.systemPackages = [ pkgs.wireguard pkgs.wireguard-tools ];

Nix on Darwin [userspace go & tools]

$ nix-env -iA nixpkgs.wireguard-tools

OpenWRT [module & tools]

# opkg install wireguard

Further installation and configuration instructions may be found on the wiki.

FreeBSD [userspace go & tools]

# pkg install wireguard

OpenBSD [userspace go & tools]

# pkg_add wireguard-go wireguard-tools

Void [module & tools]

# xbps-install -S wireguard

Adélie Linux [module, tools]

# apk add wireguard-tools wireguard-module

Source Mage [module & tools]

# cast wireguard

Buildroot [module & tools]


EdgeOS [module & tools]

$ sudo dpkg -i wireguard-{octeon|ralink}-{version}.deb

First download the correct pre-built file from the release page, and then install it with dpkg as above.

LinuxKit [module & tools]


AstLinux [module & tools]


Milis [module, tools]

# mps kur wireguard-kernel
# mps kur wireguard-tools

macOS Homebrew and MacPorts – Basic CLI [homebrew userspace go & homebrew tools] & [macports userspace go & macports tools]

$ brew install wireguard-tools


$ port install wireguard-tools

See the cross-platform documentation for more information.

Move on to the quick start walkthrough. Or, if your distribution isn't listed above, you may easily compile from source instead, a fairly simple procedure.