All Projects → tusc → wireguard

tusc / wireguard

Licence: other
Wireguard for UDM

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to wireguard

udm-utilities
A collection of things I have made to make the Unifi Dream Machine more useful
Stars: ✭ 2,228 (+3878.57%)
Mutual labels:  udm, wireguard
onetun
Userland WireGuard proxy in Rust
Stars: ✭ 495 (+783.93%)
Mutual labels:  wireguard, boringtun
Wireguard Docs
📖 Unofficial WireGuard Documentation: Setup, Usage, Configuration, and full example setups for VPNs supporting both servers & roaming clients.
Stars: ✭ 3,201 (+5616.07%)
Mutual labels:  tunnel, wireguard
warp
WARP one-click script. Add an IPv4, IPv6 or dual-stack CloudFlare WARP network interface and Socks5 proxy for VPS. 一键脚本
Stars: ✭ 950 (+1596.43%)
Mutual labels:  wireguard, boringtun
split-vpn
A split tunnel VPN script for Unifi OS routers (UDM, UXG, UDR) with policy based routing.
Stars: ✭ 589 (+951.79%)
Mutual labels:  udm, wireguard
Wireguard-DNScrypt-VPN-Server
Fast setup wireguard server script, with dnscrypt and adblocking, maleware blocking, more blocking if you need. Use case eg. always on vpn and adblocking on ios or android, and be more secured in unknown networks.
Stars: ✭ 48 (-14.29%)
Mutual labels:  wireguard
sixxsd
sixxsd - The SixXS Daemon - IPv6 Tunnel & Routing Engine
Stars: ✭ 19 (-66.07%)
Mutual labels:  tunnel
wg-portal
WireGuard Configuration Portal with LDAP connection
Stars: ✭ 476 (+750%)
Mutual labels:  wireguard
edgevpn
⛵ The immutable, decentralized, statically built p2p VPN without any central server and automatic discovery! Create decentralized introspectable tunnels over p2p with shared tokens
Stars: ✭ 223 (+298.21%)
Mutual labels:  tunnel
wireguard config maker
Simple Java program to create wireguard client config files
Stars: ✭ 51 (-8.93%)
Mutual labels:  wireguard
wgrest
WireGuard REST API
Stars: ✭ 92 (+64.29%)
Mutual labels:  wireguard
desktop-app-ui
Official IVPN Desktop app (legacy version)
Stars: ✭ 23 (-58.93%)
Mutual labels:  wireguard
wireguard exporter
Command wireguard_exporter implements a Prometheus exporter for WireGuard devices. MIT Licensed.
Stars: ✭ 94 (+67.86%)
Mutual labels:  wireguard
knx-go
KNX clients and protocol implementation in Go
Stars: ✭ 62 (+10.71%)
Mutual labels:  tunnel
PromGuard
Prometheus scraping over WireGuard: Example Terraform/Ansible for fully authenticated/encrypted stat scraping
Stars: ✭ 24 (-57.14%)
Mutual labels:  wireguard
fuso
一款体积小, 快速, 稳定, 高效, 轻量的内网穿透, 端口转发工具 支持多连接,级联代理,传输加密 (A small volume, fast, stable, efficient, and lightweight intranet penetration, port forwarding tool supports multiple connections, cascading proxy, and transmission encryption)
Stars: ✭ 1,132 (+1921.43%)
Mutual labels:  tunnel
udppunch
udppunch hole for wireguard
Stars: ✭ 123 (+119.64%)
Mutual labels:  wireguard
wiregui
A graphical user interface for wireguard (client-side) for linux and windows
Stars: ✭ 99 (+76.79%)
Mutual labels:  wireguard
ssh-web-console
Connect to your linux machine via ssh in your browser.
Stars: ✭ 198 (+253.57%)
Mutual labels:  tunnel
go-http-dialer
Go net.Dialer for HTTP(S) CONNECT Tunneling.
Stars: ✭ 55 (-1.79%)
Mutual labels:  tunnel

Wireguard for UDM/UDM pro

Distributed under MIT license

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Project Notes

Author: Carlos Talbot (@tusc69 on ubnt forums)

UPDATE: Please note this version will no longer be updated as the kernel version is now availble which is much more efficient and offers higher throughput: https://github.com/tusc/wireguard-kmod

The tar file in this repository is a collection of binaries that can be loaded onto an UDM to run wireguard in userland mode. If you want to compile your own version you can follow this guide

ssh into the UDM and type the following command from the /root folder to download the tar file:

# curl -LJo udm-wireguard.tar.Z  https://github.com/tusc/wireguard/blob/master/udm-wireguard.tar.Z?raw=true

From this directory type the following, it will extract the files under the /mnt/data path:

# tar -C / -xvf udm-wireguard.tar.Z

Once the extraction is complete, cd into /mnt/data and run the script setup_bin.sh. This will setup the symbolic links for the various binaries to the /bin path as well as create a symlink for the /etc/wireguard folder.

Please Note: you will need to run setup_bin.sh whenever the UDM is rebooted as the symlinks have to be recreated.

There's a sample wg0.conf in /etc/wireguard you can use to create your own, provided you update the public and private keys. There are various tutorials out there for setting up a client/server config for wireguard (e.g. https://www.stavros.io/posts/how-to-configure-wireguard/ )

In order to start the wireguard tunnel you need to run this command from the cli:

# WG_QUICK_USERSPACE_IMPLEMENTATION=boringtun wg-quick up wg0

you should see output similar to the following:

[#] ip link add wg0 type wireguard
RTNETLINK answers: Operation not supported
[!] Missing WireGuard kernel module. Falling back to slow userspace implementation.
[#] boringtun wg0 --disable-drop-privileges=1
BoringTun started successfully
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.253.0.3/32 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] ip -4 route add 10.253.0.0/24 dev wg0

You can also execute the wg binary for status on the tunnel:

# wg

interface: wg0
  public key: ************************
  private key: (hidden)
  listening port: 43724

peer: *********************************
  preshared key: (hidden)
  endpoint: 192.168.1.106:51820
  allowed ips: 10.253.0.0/24

Finally, in order to shutdown the tunnel you'll need to run this command:

# WG_QUICK_USERSPACE_IMPLEMENTATION=boringtun wg-quick down wg0

You'll find some other useful utils in the /mnt/data/bin path such as bash, htop, iftop and iperf3.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].