Show last authors
1 (% class="wikigeneratedid" %)
2 **Table of Contents:**
3
4 {{toc/}}
5
6
7
8
9 = 1. What is Wireguard VPN? =
10
11
12 [[WireGuard>>https://www.wireguard.com/]]^^®^^ is an extremely simple yet fast and modern VPN that utilizes **state-of-the-art [[cryptography>>url:https://www.wireguard.com/protocol/]]**. It aims to be [[faster>>url:https://www.wireguard.com/performance/]], [[simpler>>url:https://www.wireguard.com/quickstart/]], leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. Initially released for the Linux kernel, it is now cross-platform (Windows, macOS, BSD, iOS, Android) and widely deployable. It is currently under heavy development, but already it might be regarded as the most secure, easiest to use, and simplest VPN solution in the industry.
13
14
15 Network Structure for WireGuard VPN:
16
17 [[image:image-20231121160528-1.png]]
18
19
20 = 2. Run WireGuard VPN in PC =
21
22 There are many methods to install and set WireGuard server. Below is an example for reference to set up WireGuard Server in Windows.
23
24 **Video Instruction**: [[Install WireGuard Server in Windows>>https://www.youtube.com/watch?v=1AWVvW5oJtU]].
25
26 For other OS and method, please search google for more.
27
28
29 = 3. Configure Wireguard VPN on Gatewaythe LPS8N/DLOS8N/LG308N =
30
31 == 3.1 For LPS8N/DLOS8N/LG308N ==
32
33
34 Due to the size of Wireguard packages. We didn't add it as a default feature of gateways. If the user wants to use Wireguard Please upgrade your gateway firmware with the special [[firmware>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/DLOS8/Firmware/Wireguard-firmware/]].
35
36
37 === 3.1.1 Configuration via command line ===
38
39 ==== 3.1.1.1 Key Management ====
40
41
42 **#Generate keys**
43
44 (% class="box infomessage" %)
45 (((
46 umask go=
47
48 wg genkey | tee wgserver.key | wg pubkey > wgserver.pub
49
50 wg genkey | tee wgclient.key | wg pubkey > wgclient.pub
51
52 wg genpsk > wgclient.psk
53 )))
54
55 [[image:image-20231110150147-1.png||height="82" width="566"]]
56
57
58 ==== 3.1.1.2 Firewall configuration ====
59
60
61 (((
62 **#Configure firewall**
63 )))
64
65 (% class="box infomessage" %)
66 (((
67 uci del_list firewall.wan.network="vpn"
68
69 uci add_list firewall.wan.network="vpn"
70
71 uci commit firewall
72 )))
73
74 [[image:image-20231110151524-2.png]]
75
76
77 (((
78 **#Reload firewall**
79 )))
80
81 (% class="box infomessage" %)
82 (((
83 /etc/init.d/firewall
84 )))
85
86
87 ==== 3.1.1.3 Network configuration ====
88
89
90 (((
91 **#Configure network**
92 )))
93
94 (% class="box infomessage" %)
95 (((
96 uci -q delete network.vpn
97 uci set network.vpn="interface"
98 uci set network.vpn.proto="wireguard"
99 uci set network.vpn.private_key="{VPN_KEY}"
100 uci add_list network.vpn.addresses="{VPN_ADDRESS}"
101 )))
102
103 [[image:image-20231110152122-4.png]]
104
105
106 (((
107 **#Add VPN peers**
108 )))
109
110 (% class="box infomessage" %)
111 (((
112 uci -q delete network.wgserver
113 uci set network.wgserver="wireguard_vpn"
114 uci set network.wgserver.public_key="{VPN_PUB}"
115 uci set network.wgserver.endpoint_host="{VPN_SERVER}"
116 uci set network.wgserver.preshared_key="{VPN_PSK}"
117 uci set network.wgserver.endpoint_port="{VPN_PORT}"
118 uci set network.wgserver.persistent_keepalive="25"
119 uci set network.wgserver.route_allowed_ips="1"
120 uci add_list network.wgserver.allowed_ips="0.0.0.0/0"
121 uci add_list network.wgserver.allowed_ips="::/0"
122 uci commit network
123 )))
124
125 [[image:image-20231110152109-3.png]]
126
127
128 (((
129 **#reload network service**
130 )))
131
132 (% class="box infomessage" %)
133 (((
134 /etc/init.d/network reload
135 )))
136
137
138
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0