Hallo,
Via link is het me gelukt om Wireguard werkend te krijgen op de USG.
Mochten anderen dit ook willen, onderstaand de stappen :
Inloggen in de USG via SSH en volgende er in knippen/plakken om de Wireguard module te installeren:
Vervolgens creëren van de server sleutels
Hierna kun je via commando "more privatekey" en "more publickey" de sleutels achterhalen om vervolgens ook de usersleutels aan te maken
Hierna kun je weer met "more privatekey" en "more publickey" de sleutels achterhalen.
Je hebt nu dus 4 sleutelwaarden (voor zowel server als user een public en private key)
Nu stel je de interface en firewall in:
Vervolgens geef je commit <enter> , save <enter> en exit <enter> in
Wireguard is nu werkend en kun je dit testen met een wireguard client met deze wg0.conf (welke geimporteerd kan worden in Wireguard):
Met bovenstaande gaat het verkeer naar 192.168.1.* door de tunnel en het overige verkeer niet (ik gebruik 192.168.1.* als IP reeks op mijn netwerk).
Enige nadeel is dat we de interface/firewall regels direct in de USG hebben gezet, bij de volgende provisioning zullen deze weer weg zijn (controller overschrijft altijd lokale settings). We moeten de controller dus vertellen deze regels ook aan te maken bij een provisioning. Dit kan door deze code in een bestand config.gateway.json te zetten op de juiste plek (in mijn geval waar de controller op Windows staat C:\Users\username\Ubiquiti UniFi\data\sites\default).
Ps. Uitgebreidere uitleg over dit config file kun je vinden op https://web.archive.org/w...SG-Advanced-Configuration (het is een web archive link omdat Ubiquiti het nodig vond om de informatie van niet langer gevoerde producten te verwijderen).
Deze set-up werkt perfect (gebruikt op zowel Windows als Android phone clients).
Via link is het me gelukt om Wireguard werkend te krijgen op de USG.
Mochten anderen dit ook willen, onderstaand de stappen :
Inloggen in de USG via SSH en volgende er in knippen/plakken om de Wireguard module te installeren:
code:
1
2
| curl -OL https://github.com/WireGuard/wireguard-vyatta-ubnt/releases/download/1.0.20220627-1/ugw3-v1-v1.0.20220627-v1.0.20210914.deb sudo dpkg -i ugw3-v1-v1.0.20220627-v1.0.20210914.deb |
Vervolgens creëren van de server sleutels
code:
1
2
3
4
| cd /home/ubnt mkdir wireguard; cd wireguard mkdir server_keys; cd server_keys wg genkey | tee privatekey | wg pubkey > publickey |
Hierna kun je via commando "more privatekey" en "more publickey" de sleutels achterhalen om vervolgens ook de usersleutels aan te maken
code:
1
2
3
4
| cd /home/ubnt/wireguard mkdir user_keys; cd user_keys mkdir wireguard_user; cd wireguard_user wg genkey | tee privatekey | wg pubkey > publickey |
Hierna kun je weer met "more privatekey" en "more publickey" de sleutels achterhalen.
Je hebt nu dus 4 sleutelwaarden (voor zowel server als user een public en private key)
Nu stel je de interface en firewall in:
code:
1
2
3
4
5
6
7
8
9
10
11
| configure set interfaces wireguard wg0 private-key /home/ubnt/wireguard/server_keys/privatekey set interfaces wireguard wg0 address 10.8.0.1/24 set interfaces wireguard wg0 route-allowed-ips true set interfaces wireguard wg0 listen-port 51820 set interfaces wireguard wg0 peer ****hier public user key plaatsen***= allowed-ips 10.8.0.2/32 set interfaces wireguard wg0 peer ****hier public user key plaatsen***= description wireguard_user set firewall name WAN_LOCAL rule 30 action accept set firewall name WAN_LOCAL rule 30 protocol udp set firewall name WAN_LOCAL rule 30 destination port 51820 set firewall name WAN_LOCAL rule 30 description 'WireGuard USG' |
Vervolgens geef je commit <enter> , save <enter> en exit <enter> in
Wireguard is nu werkend en kun je dit testen met een wireguard client met deze wg0.conf (welke geimporteerd kan worden in Wireguard):
code:
1
2
3
4
5
6
7
8
9
10
| [Interface] PrivateKey = ****hier private user key plaatsen*** ListenPort = 51820 Address = 10.8.0.2/32 DNS = 1.1.1.1 [Peer] PublicKey = ***hier public server key plaatsen*** AllowedIPs = 10.8.0.0/24, 192.168.1.0/24 Endpoint = ***WAN IP adres of domein***:51820 |
Met bovenstaande gaat het verkeer naar 192.168.1.* door de tunnel en het overige verkeer niet (ik gebruik 192.168.1.* als IP reeks op mijn netwerk).
Enige nadeel is dat we de interface/firewall regels direct in de USG hebben gezet, bij de volgende provisioning zullen deze weer weg zijn (controller overschrijft altijd lokale settings). We moeten de controller dus vertellen deze regels ook aan te maken bij een provisioning. Dit kan door deze code in een bestand config.gateway.json te zetten op de juiste plek (in mijn geval waar de controller op Windows staat C:\Users\username\Ubiquiti UniFi\data\sites\default).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| { "firewall":{ "name":{ "WAN_LOCAL":{ "rule":{ "30":{ "action":"accept", "description":"WireGuard USG", "destination":{ "port":"51820" }, "protocol":"udp" } } } } }, "interfaces":{ "wireguard":{ "wg0":{ "address":[ "10.8.0.1/24" ], "listen-port":"51820", "mtu":"1420", "peer":{ "***public server key***":{ "allowed-ips":[ "10.8.0.2/32" ], "description":"wireguard_user" } }, "private-key":"/home/ubnt/wireguard/server_keys/privatekey", "route-allowed-ips":"true" } } } } |
Ps. Uitgebreidere uitleg over dit config file kun je vinden op https://web.archive.org/w...SG-Advanced-Configuration (het is een web archive link omdat Ubiquiti het nodig vond om de informatie van niet langer gevoerde producten te verwijderen).
Deze set-up werkt perfect (gebruikt op zowel Windows als Android phone clients).