Wiki source code of Use Wireguard VPN in Dragino Gateways
Version 9.1 by Edwin Chen on 2023/11/10 20:31
Hide last authors
author | version | line-number | content |
---|---|---|---|
![]() |
8.2 | 1 | (% class="wikigeneratedid" %) |
2 | **Table of Contents:** | ||
3 | |||
4 | {{toc/}} | ||
5 | |||
6 | |||
7 | |||
8 | |||
![]() |
9.1 | 9 | = 1. What is Wireguard VPN? = |
![]() |
8.2 | 10 | |
![]() |
6.1 | 11 | |
![]() |
7.1 | 12 | |
![]() |
9.1 | 13 | = 2. Configure Wireguard VPN on Gatewaythe LPS8N/DLOS8N/LG308N = |
14 | |||
15 | |||
16 | == 2.1 For LPS8N/DLOS8N/LG308N == | ||
17 | |||
![]() |
8.1 | 18 | 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/]]. |
![]() |
7.1 | 19 | |
![]() |
6.1 | 20 | |
![]() |
9.1 | 21 | === 2.1.1 Configuration via command line === |
![]() |
8.2 | 22 | |
![]() |
9.1 | 23 | ==== 2.1.1.1 Key Management ==== |
![]() |
6.1 | 24 | |
25 | |||
![]() |
8.2 | 26 | **#Generate keys** |
27 | |||
![]() |
6.1 | 28 | (% class="box infomessage" %) |
29 | ((( | ||
30 | umask go= | ||
31 | |||
32 | wg genkey | tee wgserver.key | wg pubkey > wgserver.pub | ||
33 | |||
34 | wg genkey | tee wgclient.key | wg pubkey > wgclient.pub | ||
35 | |||
36 | wg genpsk > wgclient.psk | ||
37 | ))) | ||
38 | |||
39 | [[image:image-20231110150147-1.png||height="82" width="566"]] | ||
40 | |||
41 | |||
![]() |
9.1 | 42 | ==== 2.1.1.2 Firewall configuration ==== |
![]() |
6.1 | 43 | |
44 | |||
45 | ((( | ||
![]() |
8.2 | 46 | **#Configure firewall** |
![]() |
6.1 | 47 | ))) |
48 | |||
49 | (% class="box infomessage" %) | ||
50 | ((( | ||
51 | uci del_list firewall.wan.network="vpn" | ||
52 | |||
53 | uci add_list firewall.wan.network="vpn" | ||
54 | |||
55 | uci commit firewall | ||
56 | ))) | ||
57 | |||
58 | [[image:image-20231110151524-2.png]] | ||
59 | |||
60 | |||
61 | ((( | ||
![]() |
8.2 | 62 | **#Reload firewall** |
![]() |
6.1 | 63 | ))) |
64 | |||
65 | (% class="box infomessage" %) | ||
66 | ((( | ||
67 | /etc/init.d/firewall | ||
68 | ))) | ||
69 | |||
70 | |||
![]() |
9.1 | 71 | ==== 2.1.1.3 Network configuration ==== |
![]() |
6.1 | 72 | |
![]() |
8.2 | 73 | |
![]() |
6.1 | 74 | ((( |
![]() |
8.2 | 75 | **#Configure network** |
![]() |
6.1 | 76 | ))) |
77 | |||
78 | (% class="box infomessage" %) | ||
79 | ((( | ||
80 | uci -q delete network.vpn | ||
81 | uci set network.vpn="interface" | ||
82 | uci set network.vpn.proto="wireguard" | ||
83 | uci set network.vpn.private_key="{VPN_KEY}" | ||
84 | uci add_list network.vpn.addresses="{VPN_ADDRESS}" | ||
85 | ))) | ||
86 | |||
87 | [[image:image-20231110152122-4.png]] | ||
88 | |||
89 | |||
90 | ((( | ||
![]() |
8.3 | 91 | **#Add VPN peers** |
![]() |
6.1 | 92 | ))) |
93 | |||
94 | (% class="box infomessage" %) | ||
95 | ((( | ||
96 | uci -q delete network.wgserver | ||
97 | uci set network.wgserver="wireguard_vpn" | ||
98 | uci set network.wgserver.public_key="{VPN_PUB}" | ||
99 | uci set network.wgserver.endpoint_host="{VPN_SERVER}" | ||
100 | uci set network.wgserver.preshared_key="{VPN_PSK}" | ||
101 | uci set network.wgserver.endpoint_port="{VPN_PORT}" | ||
102 | uci set network.wgserver.persistent_keepalive="25" | ||
103 | uci set network.wgserver.route_allowed_ips="1" | ||
104 | uci add_list network.wgserver.allowed_ips="0.0.0.0/0" | ||
105 | uci add_list network.wgserver.allowed_ips="::/0" | ||
106 | uci commit network | ||
107 | ))) | ||
108 | |||
109 | [[image:image-20231110152109-3.png]] | ||
110 | |||
111 | |||
112 | ((( | ||
![]() |
8.3 | 113 | **#reload network service** |
![]() |
6.1 | 114 | ))) |
115 | |||
116 | (% class="box infomessage" %) | ||
117 | ((( | ||
118 | /etc/init.d/network reload | ||
119 | ))) | ||
120 | |||
121 | |||
122 | |||
123 |