Passend dazu aus dem Bitwarden Blog
Link Preview Image Bitwarden to launch passkey management | Bitwarden BlogWelcome, passkeys – FIDO credentials stored directly on your phone or computer.
faviconBitwarden (bitwarden.com)
In letzter Zeit liest man immer von Wireguard und das es bald evt. in den Kernel aufgenommen wird. Das macht doch jemanden wie mich furchtbar neugierig.
Dann geht es mal ans Ausprobieren, wie immer auf einem ROCKPro64 bzw. zwei
Wir brauchen für Wireguard ein Kernelmodul, das aber nicht vorhanden ist. Dann bauen wir das mal selber.
sudo apt-get install libmnl-dev libelf-dev linux-headers-$(uname -r) build-essential pkg-config
git clone https://git.zx2c4.com/WireGuard
cd WireGuard/src
make
sudo make install
Danach ist alles vorhanden, was wir benötigen. In diesem Beispiel wollen wir eine Peer-to-Peer Verbindung aufbauen.
Unter /etc/wireguard legt man alle Keys und Konfigdateien ab.
cd /etc/wireguard
Der Ordner ist standardmäßig leer!
root@rp64_nextcloud:/etc/wireguard# wg genkey > private.key
Warning: writing to world accessible file.
Consider setting the umask to 077 and trying again.
root@rp64_nextcloud:/etc/wireguard# wg pubkey > public.key < private.key
root@rp64_nextcloud:/etc/wireguard# wg genpsk > psk.key
sudo ip link add wg0 type wireguard
sudo ip addr add 192.168.10.1/24 dev wg0
Ausgabe: Nur Schnittstelle angelegt
root@rp64_nextcloud:/etc/wireguard# wg
interface: wg0
cd /etc/wireguard
wg set wg0 private-key ./private.key
Ausgabe: Key hinzugefügt!
root@rp64_nextcloud:/etc/wireguard# wg
interface: wg0
public key: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
private key: (hidden)
Falls man sich mal vertan hat, kann man hiermit alle IP-Adressen einer Schnittstelle löschen.
ip addr flush dev wg0
ip link set wg0 up
Wenn man das vergisst, wird einem beim Befehl wg kein Port angezeigt.
Nicht richtig
interface: wg0
public key: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
private key: (hidden)
Korrekt
interface: wg0
public key: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
private key: (hidden)
listening port: 35866
wg set wg0 peer zj1ajjcBhgFSe+NUHtnTNQ4+emsVgHDPVOeQHVKK4U4= allowed-ips 192.168.10.2/32 endpoint 192.168.3.14:53751
Das ganze ist dann auf beiden Rechner auszuführen, nicht besonders viel Arbeit wenn man es einmal verstanden hat. Ich habe hier nur die Schritte auf dem einen Rechner aufgelistet.
root@rp64_nextcloud:/etc/wireguard# ping 192.168.10.2
PING 192.168.10.2 (192.168.10.2) 56(84) bytes of data.
64 bytes from 192.168.10.2: icmp_seq=1 ttl=64 time=2.50 ms
64 bytes from 192.168.10.2: icmp_seq=2 ttl=64 time=2.99 ms
64 bytes from 192.168.10.2: icmp_seq=3 ttl=64 time=2.75 ms
64 bytes from 192.168.10.2: icmp_seq=4 ttl=64 time=2.59 ms
64 bytes from 192.168.10.2: icmp_seq=5 ttl=64 time=2.91 ms
^C
--- 192.168.10.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4007ms
rtt min/avg/max/mdev = 2.509/2.755/2.998/0.194 ms
root@rockpro64:/etc/wireguard# ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_seq=1 ttl=64 time=2.95 ms
64 bytes from 192.168.10.1: icmp_seq=2 ttl=64 time=2.83 ms
64 bytes from 192.168.10.1: icmp_seq=3 ttl=64 time=2.43 ms
^C
--- 192.168.10.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 2.430/2.740/2.958/0.225 ms
Nach erfolgreichem Pingtest, kann man mit dem Befehl wg sehen, wie viel Daten man transferiert hat.
root@rp_64_test:/etc/wireguard# wg
interface: wg0
public key: zj1ajjcBhgFSe+NUHtnTNQ4+emsVgHDPVOeQHVKK4U4=
private key: (hidden)
listening port: 41908
peer: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
endpoint: 192.168.3.208:35866
allowed ips: 192.168.10.1/32
latest handshake: 52 seconds ago
transfer: 4.84 KiB received, 4.93 KiB sent
root@rp64_nextcloud:/etc/wireguard# iperf3 -B 192.168.10.1 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.10.2, port 32876
[ 5] local 192.168.10.1 port 5201 connected to 192.168.10.2 port 32878
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 75.5 MBytes 633 Mbits/sec
[ 5] 1.00-2.00 sec 106 MBytes 891 Mbits/sec
[ 5] 2.00-3.00 sec 107 MBytes 895 Mbits/sec
[ 5] 3.00-4.00 sec 107 MBytes 901 Mbits/sec
[ 5] 4.00-5.00 sec 107 MBytes 900 Mbits/sec
[ 5] 5.00-6.00 sec 107 MBytes 899 Mbits/sec
[ 5] 6.00-7.00 sec 107 MBytes 901 Mbits/sec
[ 5] 7.00-8.00 sec 107 MBytes 895 Mbits/sec
[ 5] 8.00-9.00 sec 107 MBytes 896 Mbits/sec
[ 5] 9.00-10.00 sec 107 MBytes 897 Mbits/sec
[ 5] 10.00-10.02 sec 1.91 MBytes 893 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-10.02 sec 0.00 Bytes 0.00 bits/sec sender
[ 5] 0.00-10.02 sec 1.02 GBytes 871 Mbits/sec receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
^Ciperf3: interrupt - the server has terminated
root@rockpro64:/etc/wireguard# iperf3 -c 192.168.10.1
Connecting to host 192.168.10.1, port 5201
[ 4] local 192.168.10.2 port 32878 connected to 192.168.10.1 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 80.3 MBytes 673 Mbits/sec 3 1.52 MBytes
[ 4] 1.00-2.00 sec 106 MBytes 889 Mbits/sec 1 910 KBytes
[ 4] 2.00-3.00 sec 106 MBytes 891 Mbits/sec 0 1.01 MBytes
[ 4] 3.00-4.00 sec 108 MBytes 910 Mbits/sec 0 1.11 MBytes
[ 4] 4.00-5.00 sec 107 MBytes 899 Mbits/sec 0 1.21 MBytes
[ 4] 5.00-6.00 sec 107 MBytes 900 Mbits/sec 0 1.30 MBytes
[ 4] 6.00-7.00 sec 107 MBytes 900 Mbits/sec 0 1.39 MBytes
[ 4] 7.00-8.00 sec 106 MBytes 891 Mbits/sec 1 811 KBytes
[ 4] 8.00-9.00 sec 107 MBytes 900 Mbits/sec 0 942 KBytes
[ 4] 9.00-10.00 sec 107 MBytes 896 Mbits/sec 0 1.04 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 1.02 GBytes 875 Mbits/sec 5 sender
[ 4] 0.00-10.00 sec 1.02 GBytes 872 Mbits/sec receiver
iperf Done.
root@rp64_nextcloud:/etc/wireguard# iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.3.14, port 39548
[ 5] local 192.168.3.208 port 5201 connected to 192.168.3.14 port 39550
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 110 MBytes 925 Mbits/sec
[ 5] 1.00-2.00 sec 112 MBytes 942 Mbits/sec
[ 5] 2.00-3.00 sec 112 MBytes 940 Mbits/sec
[ 5] 3.00-4.00 sec 112 MBytes 940 Mbits/sec
[ 5] 4.00-5.00 sec 112 MBytes 939 Mbits/sec
[ 5] 5.00-6.00 sec 112 MBytes 938 Mbits/sec
[ 5] 6.00-7.00 sec 112 MBytes 938 Mbits/sec
[ 5] 7.00-8.00 sec 112 MBytes 939 Mbits/sec
[ 5] 8.00-9.00 sec 112 MBytes 940 Mbits/sec
[ 5] 9.00-10.00 sec 111 MBytes 927 Mbits/sec
[ 5] 10.00-10.02 sec 1.97 MBytes 924 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-10.02 sec 0.00 Bytes 0.00 bits/sec sender
[ 5] 0.00-10.02 sec 1.09 GBytes 937 Mbits/sec receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.3.14, port 39552
[ 5] local 192.168.3.208 port 5201 connected to 192.168.3.14 port 39554
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 5] 0.00-1.00 sec 114 MBytes 958 Mbits/sec 0 1.36 MBytes
[ 5] 1.00-2.00 sec 112 MBytes 943 Mbits/sec 0 1.36 MBytes
[ 5] 2.00-3.00 sec 111 MBytes 936 Mbits/sec 0 1.84 MBytes
[ 5] 3.00-4.00 sec 111 MBytes 933 Mbits/sec 0 1.84 MBytes
[ 5] 4.00-5.00 sec 108 MBytes 901 Mbits/sec 0 1.84 MBytes
[ 5] 5.00-6.00 sec 111 MBytes 934 Mbits/sec 0 1.84 MBytes
[ 5] 6.00-7.00 sec 112 MBytes 944 Mbits/sec 0 1.84 MBytes
[ 5] 7.00-8.00 sec 112 MBytes 944 Mbits/sec 0 1.84 MBytes
[ 5] 8.00-9.00 sec 112 MBytes 943 Mbits/sec 0 1.84 MBytes
[ 5] 9.00-10.00 sec 111 MBytes 934 Mbits/sec 0 1.84 MBytes
[ 5] 10.00-10.01 sec 1.25 MBytes 1.15 Gbits/sec 0 1.84 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 5] 0.00-10.01 sec 1.09 GBytes 937 Mbits/sec 0 sender
[ 5] 0.00-10.01 sec 0.00 Bytes 0.00 bits/sec receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Ultra coole Sache Ich habe noch nie so schnell einen Tunnel aufgebaut! Meine Erinnerungen an OpenVPN kommen da hoch, was war das ein Gefummel bis da mal eine Verbindung stand. Die Perfomance der Verbindung war ebenfalls überraschend schnell. Bitte beachten, das war ein Test zweier ROCKPro64 in meinem lokalem Netz. Ein Test in der freien Wildbahn folgt aber!
Und zum Schluss folgender Hinweis der wireguard Webseite!
WireGuard is not yet complete. You should not rely on this code. It has not undergone proper degrees of security auditing and the protocol is still subject to change. We're working toward a stable 1.0 release, but that time has not yet come. There are experimental snapshots tagged with "0.0.YYYYMMDD", but these should not be considered real releases and they may contain security vulnerabilities (which would not be eligible for CVEs, since this is pre-release snapshot software). If you are packaging WireGuard, you must keep up to date with the snapshots.
So, gibt was Neues Kamil hat mit dem Release RC12 ein paar Dinge verbessert.
root@rockpro64:~# uname -a
Linux rockpro64 4.4.167-1189-rockchip-ayufan-gea9ef7a80268 #1 SMP Tue May 28 14:37:31 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
## Wireguard
Installing Wireguard is very simple with DKMS and makes Wireguard to be auto-updated
after kernel change.
Following the documentation from https://www.wireguard.com/install/:
```bash
sudo add-apt-repository ppa:wireguard/wireguard
sudo apt-get install python wireguard
```
Ok, DKMS !?
DKMS steht für Dynamic Kernel Module Support. Das von Dell entwickelte Hilfsprogramm überwacht, ob zusätzliche >Kernelmodule manuell installiert wurden und aktualisiert die Module immer dann, wenn ein neuer oder aktualisierter Kernel installiert wird. Dies ist insofern praktisch, dass das Kompilieren des Kernelmoduls nicht immer von Hand durchgeführt werden muss, wenn der Kernel aktualisiert wurde.
Quelle: https://wiki.ubuntuusers.de/DKMS/
So für mich als normaler User, ich muss mir Wireguard jetzt nicht mehr bauen, sondern kann es ganz bequem installieren. Die dazu benötigten Befehle stehen weiter oben.
rock64@rockpro64:~$ sudo add-apt-repository ppa:wireguard/wireguard
WireGuard is a novel VPN that runs inside the Linux Kernel. This is the Ubuntu packaging for WireGuard. More info may be found at its website, listed below.
More info: https://www.wireguard.com/
Packages: wireguard wireguard-tools wireguard-dkms
Install with: $ apt install wireguard
For help, please contact <email address hidden>
More info: https://launchpad.net/~wireguard/+archive/ubuntu/wireguard
Press [ENTER] to continue or Ctrl-c to cancel adding it.
rock64@rockpro64:~$ sudo apt-get install python wireguard
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
dkms libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python-minimal python2.7 python2.7-minimal wireguard-dkms wireguard-tools
Suggested packages:
python3-apport menu python-doc python-tk python2.7-doc binfmt-support
Recommended packages:
fakeroot
The following NEW packages will be installed:
dkms libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python python-minimal python2.7 python2.7-minimal wireguard wireguard-dkms
wireguard-tools
0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
Need to get 4451 kB of archives.
After this operation, 21.4 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic/main arm64 wireguard-dkms all 0.0.20190406-wg1~bionic [553 kB]
Get:2 http://ports.ubuntu.com/ubuntu-ports bionic-security/main arm64 libpython2.7-minimal arm64 2.7.15~rc1-1ubuntu0.1 [334 kB]
Get:3 http://ports.ubuntu.com/ubuntu-ports bionic-security/main arm64 python2.7-minimal arm64 2.7.15~rc1-1ubuntu0.1 [1142 kB]
Get:4 http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic/main arm64 wireguard-tools arm64 0.0.20190406-wg1~bionic [84.1 kB]
Get:5 http://ports.ubuntu.com/ubuntu-ports bionic/main arm64 python-minimal arm64 2.7.15~rc1-1 [28.1 kB]
Get:6 http://ports.ubuntu.com/ubuntu-ports bionic-security/main arm64 libpython2.7-stdlib arm64 2.7.15~rc1-1ubuntu0.1 [1851 kB]
Get:7 http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic/main arm64 wireguard all 0.0.20190406-wg1~bionic [4168 B]
Get:8 http://ports.ubuntu.com/ubuntu-ports bionic-security/main arm64 python2.7 arm64 2.7.15~rc1-1ubuntu0.1 [238 kB]
Get:9 http://ports.ubuntu.com/ubuntu-ports bionic/main arm64 libpython-stdlib arm64 2.7.15~rc1-1 [7620 B]
Get:10 http://ports.ubuntu.com/ubuntu-ports bionic/main arm64 python arm64 2.7.15~rc1-1 [140 kB]
Get:11 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 dkms all 2.3-3ubuntu9.2 [68.0 kB]
Fetched 4451 kB in 1s (6651 kB/s)
Selecting previously unselected package libpython2.7-minimal:arm64.
(Reading database ... 47070 files and directories currently installed.)
Preparing to unpack .../0-libpython2.7-minimal_2.7.15~rc1-1ubuntu0.1_arm64.deb ...
Unpacking libpython2.7-minimal:arm64 (2.7.15~rc1-1ubuntu0.1) ...
Selecting previously unselected package python2.7-minimal.
Preparing to unpack .../1-python2.7-minimal_2.7.15~rc1-1ubuntu0.1_arm64.deb ...
Unpacking python2.7-minimal (2.7.15~rc1-1ubuntu0.1) ...
Selecting previously unselected package python-minimal.
Preparing to unpack .../2-python-minimal_2.7.15~rc1-1_arm64.deb ...
Unpacking python-minimal (2.7.15~rc1-1) ...
Selecting previously unselected package libpython2.7-stdlib:arm64.
Preparing to unpack .../3-libpython2.7-stdlib_2.7.15~rc1-1ubuntu0.1_arm64.deb ...
Unpacking libpython2.7-stdlib:arm64 (2.7.15~rc1-1ubuntu0.1) ...
Selecting previously unselected package python2.7.
Preparing to unpack .../4-python2.7_2.7.15~rc1-1ubuntu0.1_arm64.deb ...
Unpacking python2.7 (2.7.15~rc1-1ubuntu0.1) ...
Selecting previously unselected package libpython-stdlib:arm64.
Preparing to unpack .../5-libpython-stdlib_2.7.15~rc1-1_arm64.deb ...
Unpacking libpython-stdlib:arm64 (2.7.15~rc1-1) ...
Setting up libpython2.7-minimal:arm64 (2.7.15~rc1-1ubuntu0.1) ...
Setting up python2.7-minimal (2.7.15~rc1-1ubuntu0.1) ...
Linking and byte-compiling packages for runtime python2.7...
Setting up python-minimal (2.7.15~rc1-1) ...
Selecting previously unselected package python.
(Reading database ... 47818 files and directories currently installed.)
Preparing to unpack .../python_2.7.15~rc1-1_arm64.deb ...
Unpacking python (2.7.15~rc1-1) ...
Selecting previously unselected package dkms.
Preparing to unpack .../dkms_2.3-3ubuntu9.2_all.deb ...
Unpacking dkms (2.3-3ubuntu9.2) ...
Selecting previously unselected package wireguard-dkms.
Preparing to unpack .../wireguard-dkms_0.0.20190406-wg1~bionic_all.deb ...
Unpacking wireguard-dkms (0.0.20190406-wg1~bionic) ...
Selecting previously unselected package wireguard-tools.
Preparing to unpack .../wireguard-tools_0.0.20190406-wg1~bionic_arm64.deb ...
Unpacking wireguard-tools (0.0.20190406-wg1~bionic) ...
Selecting previously unselected package wireguard.
Preparing to unpack .../wireguard_0.0.20190406-wg1~bionic_all.deb ...
Unpacking wireguard (0.0.20190406-wg1~bionic) ...
Processing triggers for mime-support (3.60ubuntu1) ...
Setting up wireguard-tools (0.0.20190406-wg1~bionic) ...
Setting up dkms (2.3-3ubuntu9.2) ...
Setting up libpython2.7-stdlib:arm64 (2.7.15~rc1-1ubuntu0.1) ...
Setting up wireguard-dkms (0.0.20190406-wg1~bionic) ...
Loading new wireguard-0.0.20190406 DKMS files...
Building for 4.4.167-1189-rockchip-ayufan-gea9ef7a80268
Building initial module for 4.4.167-1189-rockchip-ayufan-gea9ef7a80268
Done.
wireguard:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/4.4.167-1189-rockchip-ayufan-gea9ef7a80268/updates/dkms/
depmod...
DKMS: install completed.
Setting up python2.7 (2.7.15~rc1-1ubuntu0.1) ...
Setting up libpython-stdlib:arm64 (2.7.15~rc1-1) ...
Setting up wireguard (0.0.20190406-wg1~bionic) ...
Setting up python (2.7.15~rc1-1) ...
Danach ein Reboot und wie im ersten Beitrag beschrieben installieren.
root@rp64_nextcloud:/etc/wireguard# wg
interface: wg0
public key: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
private key: (hidden)
listening port: 53984
peer: WU2zYy8EcQvGT2SlqcbY8O8DN1o28TlOT/9yS1+tcAk=
endpoint: 192.168.3.18:34774
allowed ips: 192.168.10.2/32
root@rp64_nextcloud:/etc/wireguard# ping 192.168.10.2
PING 192.168.10.2 (192.168.10.2) 56(84) bytes of data.
64 bytes from 192.168.10.2: icmp_seq=1 ttl=64 time=15.2 ms
64 bytes from 192.168.10.2: icmp_seq=2 ttl=64 time=2.22 ms
64 bytes from 192.168.10.2: icmp_seq=3 ttl=64 time=2.42 ms
^C
--- 192.168.10.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 2.221/6.629/15.247/6.094 ms
root@rockpro64:~# wg
interface: wg0
public key: WU2zYy8EcQvGT2SlqcbY8O8DN1o28TlOT/9yS1+tcAk=
private key: (hidden)
listening port: 34774
peer: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
endpoint: 192.168.3.208:53984
allowed ips: 192.168.10.1/32
root@rockpro64:~# ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_seq=1 ttl=64 time=3.16 ms
64 bytes from 192.168.10.1: icmp_seq=2 ttl=64 time=2.54 ms
64 bytes from 192.168.10.1: icmp_seq=3 ttl=64 time=2.51 ms
^C
--- 192.168.10.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 2.514/2.740/3.163/0.299 ms
Tunnel steht, Ping Test erfolgreich.
Was machen, damit Wireguard auch einen Neustart übersteht?
Das Image von Kamil basiert auf einem Ubuntu Minimal und nutzt systemd.
Wir brauchen zwei Dateien, das Beispiel bezieht sich auf den Rechner Nr.2
[Match]
Name=wg0
[Network]
Address=192.168.10.2
#Address=2001:db8:1234:5678::1
[NetDev]
Name=wg0
Kind=wireguard
Description=Wireguard tunnel
[WireGuard]
PrivateKey=<PrivateKey Rechner Nr.2>
ListenPort=34774
[WireGuardPeer]
PublicKey=<PublicKey Rechner Nr.1>
AllowedIPs=192.168.10.1/32
#AllowedIPs=
Endpoint=192.168.3.208:53984
Danach
systemctl daemon-reload
systemctl start systemd-networkd
Einmal durchstarten
reboot
Danach müßte der Tunnel wg0 automatisch gestartet sein. Kontrollieren mit
sudo wg
Ausgabe:
root@rockpro64:~# wg
interface: wg0
public key: WU2zYy8EcQvGT2SlqcbY8O8DN1o28TlOT/9yS1+tcAk=
private key: (hidden)
listening port: 34774
peer: gqiCgt5+X3na+wZ1e9gnR1pTujFO3jIudnwDIttDPEo=
endpoint: 192.168.3.208:53984
allowed ips: 192.168.10.1/32
latest handshake: 9 minutes, 49 seconds ago
transfer: 1.28 KiB received, 1.30 KiB sent
Tunnel testen mit
root@rockpro64:~# ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_seq=1 ttl=64 time=14.4 ms
64 bytes from 192.168.10.1: icmp_seq=2 ttl=64 time=2.82 ms
--- 192.168.10.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 2.828/8.662/14.497/5.835 ms
Den Daemon von systemd kontrollieren
root@rockpro64:~# networkctl status wg0
● 4: wg0
Link File: /lib/systemd/network/99-default.link
Network File: /etc/systemd/network/wg0.network
Type: none
State: routable (configured)
Address: 192.168.10.2
Etwas schnellerer Weg den Tunnel aufzubauen, Voraussetzung
Danach dann einfach
ip link add wg0 type wireguard
wg setconf wg0 /etc/wireguard/wg0.conf
[Interface]
PrivateKey = <Private Key>
ListenPort = 60563
[Peer]
PublicKey = <Public Key Ziel>
Endpoint = <IPv4 Adresse Zielrechner>:58380
AllowedIPs = 10.10.0.1/32
Die Rechte der Dateien von wireguard müssen eingeschränkt werden.
sudo chmod 0600 /etc/wireguard/wg0.conf
Das ganze per rc.local beim Booten laden. Datei /root/wireguard_start.sh
###############################################################################################
# Autor: Frank Mankel
# Startup-Script
# Wireguard
# Kontakt: frank.mankel@gmail.com
#
###############################################################################################
ip link add wg0 type wireguard
ip address add dev wg0 10.10.0.1/8
wg setconf wg0 /etc/wireguard/wg0.conf
ip link set up dev wg0
Danach Datei ausführbar machen
chmod +x /root/wireguard_start.sh
In rc.local
/root/wireguard_start.sh
eintragen - Fertig!