Installation

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

$ sudo apt install wireguard

Download from Play Store

Download from F-Droid

iOS [app store ]

Download from App Store

# apt install wireguard

Users with Debian releases older than Bullseye should enable backports.

$ sudo dnf install wireguard-tools

$ sudo urpmi wireguard-tools

$ sudo pacman -S wireguard-tools

Users of kernels < 5.6 may also choose wireguard-lts or wireguard-dkms + linux-headers , depending on which kernel is used.

$ sudo zypper install wireguard-tools

$ for i in wireguard-linux-compat wireguard-tools; do wget https://slackbuilds.org/slackbuilds/14.2/network/$i.tar.gz && tar -xzf $i.tar.gz && cd $i && OUTPUT=$(pwd) ./$i.SlackBuild && sudo upgradepkg --install-new ./$i*.tgz && cd ..; done

# apk add -U wireguard-tools

# emerge wireguard-tools

The wireguard-modules ebuild also exists for compatibility with older kernels.

# cave resolve -x wireguard

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

$ nix-env -iA nixpkgs.wireguard-tools

# opkg install wireguard

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

Method 1: the easiest way is via ELRepo's pre-built module:

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm $ sudo yum install kmod-wireguard wireguard-tools

Method 2: users running non-standard kernels may wish to use the DKMS package instead:

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm $ sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms $ sudo yum copr enable jdoss/wireguard $ sudo yum install wireguard-dkms wireguard-tools

Method 1: a signed module is available as built-in to CentOS's kernel-plus:

$ sudo yum install yum-utils epel-release $ sudo yum-config-manager --setopt=centosplus.includepkgs="kernel-plus, kernel-plus-*" --setopt=centosplus.enabled=1 --save $ sudo sed -e 's/^DEFAULTKERNEL=kernel-core$/DEFAULTKERNEL=kernel-plus-core/' -i /etc/sysconfig/kernel $ sudo yum install kernel-plus wireguard-tools $ sudo reboot

Method 2: the easiest way is via ELRepo's pre-built module:

$ sudo yum install elrepo-release epel-release $ sudo yum install kmod-wireguard wireguard-tools

Method 3: users running non-standard kernels may wish to use the DKMS package instead:

$ sudo yum install epel-release $ sudo yum config-manager --set-enabled PowerTools $ sudo yum copr enable jdoss/wireguard $ sudo yum install wireguard-dkms wireguard-tools

Method 1: the easiest way is via ELRepo's pre-built module:

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm $ sudo yum install kmod-wireguard wireguard-tools

Method 2: users running non-standard kernels may wish to use the DKMS package instead:

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm $ sudo curl -o /etc/yum.repos.d/jdoss-wireguard-epel-7.repo https://copr.fedorainfracloud.org/coprs/jdoss/wireguard/repo/epel-7/jdoss-wireguard-epel-7.repo $ sudo yum install wireguard-dkms wireguard-tools

Method 1: a signed module is available as built-in to CentOS's kernel-plus:

$ sudo yum install yum-utils epel-release $ sudo yum-config-manager --setopt=centosplus.includepkgs=kernel-plus --enablerepo=centosplus --save $ sudo sed -e 's/^DEFAULTKERNEL=kernel$/DEFAULTKERNEL=kernel-plus/' -i /etc/sysconfig/kernel $ sudo yum install kernel-plus wireguard-tools $ sudo reboot

Method 2: users wishing to stick with the standard kernel may use ELRepo's pre-built module:

$ sudo yum install epel-release elrepo-release $ sudo yum install yum-plugin-elrepo $ sudo yum install kmod-wireguard wireguard-tools

Method 3: users running non-standard kernels may wish to use the DKMS package instead:

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm $ sudo curl -o /etc/yum.repos.d/jdoss-wireguard-epel-7.repo https://copr.fedorainfracloud.org/coprs/jdoss/wireguard/repo/epel-7/jdoss-wireguard-epel-7.repo $ sudo yum install wireguard-dkms wireguard-tools

# pkg install wireguard

# pkg_add wireguard-tools

# pkg_add wireguard-go wireguard-tools

# pkg install wireguard-tools

# xbps-install -S wireguard-tools wireguard-dkms

# apk add wireguard-tools wireguard-module

# cast wireguard-tools

BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y BR2_PACKAGE_WIREGUARD_TOOLS=y

$ sudo dpkg -i wireguard-{type}-{version}.deb

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

LinuxKit [module ]

kernel: linuxkit/kernel:... image: linuxkit/ip:...

BR2_PACKAGE_WIREGUARD_TOOLS=y BR2_PACKAGE_WIREGUARD=y

# mps kur wireguard-tools wireguard-linux-compat

$ brew install wireguard-tools

or

$ 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.