Difference between revisions of "WireGuard"

From Fixme.ch
Jump to: navigation, search
(Router configuration)
(Add peer)
 
(7 intermediate revisions by the same user not shown)
Line 46: Line 46:
 
== Add peer ==
 
== Add peer ==
 
<pre>
 
<pre>
root@ubnt-fixme:~# wg set wg0 peer <base64 public key> allowed-ips 192.168.131.4/32^C
+
ssh ubnt@router.fixme.ch
  
oot@ubnt-fixme:~# wg show
+
root@ubnt-fixme# configure
interface: wg0
+
  public key: YYY=
+
  private key: (hidden)
+
  listening port: 51820
+
  
peer: XXX=
+
root@ubnt-fixme# show interfaces wireguard wg0
  endpoint: ZZZ
+
address 192.168.131.1/24
  allowed ips: 192.168.131.2/32
+
listen-port 51820
  latest handshake: 19 seconds ago
+
mtu 1420
  transfer: 2.38 GiB received, 2.05 GiB sent
+
peer XXX {
 +
    allowed-ips 192.168.131.X/32
 +
    description Name
 +
}
 
[...]
 
[...]
</pre>
 
  
== Other ==
+
# Set the next available allowed ip
<pre>
+
root@ubnt-fixme# set interfaces wireguard wg0 peer "<base64 public key>"
francois@ubnt-fixme# show interfaces wireguard
+
root@ubnt-fixme# set interfaces wireguard wg0 peer "<base64 public key>" allowed-ips 192.168.131.X/32
wireguard wg0 {
+
root@ubnt-fixme# set interfaces wireguard wg0 peer "<base64 public key>" description Name
    address 192.168.131.1/24
+
    listen-port 51820
+
    peer ehn2tJDbFUtHVXf4095KPm9vFetxcCoR6YDCjpFfohc= {
+
        allowed-ips 192.168.131.2/32
+
    }
+
    private-key HAHAHAHAHAHAHA
+
}
+
[edit]
+
  
 +
root@ubnt-fixme# show interfaces wireguard wg0
 +
root@ubnt-fixme# commit
 +
root@ubnt-fixme# save
 
</pre>
 
</pre>

Latest revision as of 18:52, 20 November 2020

WireGuard is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography.

It is currently deployed on our lovely Ubiquity EdgeRouter-PRO.

Client configuration

/etc/wireguard/fixme.conf:

[Interface]
PrivateKey = HAHAHAHAHAHA
Address = 192.168.131.2

[Peer]
Endpoint = 62.220.131.170:53
PublicKey = 4FVgHmPtsY7Rg7VlNrNC0x2RVFHlYJOh8ln7q77THxo=
AllowedIPs = 0.0.0.0/0, ::/0

Send your public key to User:Francois to get added.

And then activate the VPN with wg-quick.

# wg-quick up fixme
# wg show
root@fixme:~# wg show
interface: fixme
  public key: ehn2tJDbFUtHVXf4095KPm9vFetxcCoR6YDCjpFfohc=
  private key: (hidden)
  listening port: 34869
  fwmark: 0xca6c

peer: (hidden)
  endpoint: 62.220.131.170:53
  allowed ips: 0.0.0.0/0, ::/0
  latest handshake: 1 minute, 3 seconds ago
  transfer: 1.57 MiB received, 263.00 KiB sent

Router configuration

Add peer

ssh ubnt@router.fixme.ch

root@ubnt-fixme# configure

root@ubnt-fixme# show interfaces wireguard wg0
 address 192.168.131.1/24
 listen-port 51820
 mtu 1420
 peer XXX {
     allowed-ips 192.168.131.X/32
     description Name
 }
[...]

# Set the next available allowed ip
root@ubnt-fixme# set interfaces wireguard wg0 peer "<base64 public key>"
root@ubnt-fixme# set interfaces wireguard wg0 peer "<base64 public key>" allowed-ips 192.168.131.X/32
root@ubnt-fixme# set interfaces wireguard wg0 peer "<base64 public key>" description Name

root@ubnt-fixme# show interfaces wireguard wg0
root@ubnt-fixme# commit
root@ubnt-fixme# save