WireGuard in Docker auf der Synology funktioniert, es ist allerdings nicht ganz einfach das ganze Routing richtig zu konfigurieren. Das WireGuard Paket von runfalk ist genial und läuft bei mir problemlos. Am einfachsten ist die Konfiguration via
wg-quick
:
Zuerst mit
wg genkey
und
wg pubkey
je ein public/private key-pair für den Server und den Client erstellen.
Server:
Folgende config Datei unter
/etc/wireguard/wg0.conf
abspeichern:
INI:
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <Server Private Key>
[Peer]
PublicKey = <Client Public Key>
AllowedIPs = 10.0.0.2
Client:
Folgende config importieren:
INI:
[Interface]
Address = 10.0.0.2/24
PrivateKey = <Client Private Key>
[Peer]
PublicKey = <Server Public Key>
Endpoint = <Server Public IP>:51820
AllowedIPs = 10.0.0.1, <Server Private IP>
Hierbei ist
10.0.0.0/24
das VPN Tunnelnetz, mit dem Server auf
10.0.0.1
und dem Client auf
10.0.0.2
. Dieses Netz kann beliebig gewählt werden, darf aber nicht identisch sein mit den LANs auf Server- und Client-Seite. Auf dem Server können weitere Clients hinzugefügt werden, in dem man einfach weitere
[Peer]
Abschnitte anhängt. Die
<Server Public IP>
ist die IP Adresse über welche die Synology Box vom Internet her erreichbar ist, also üblicherweise die WAN-IP des Routers. Die
<Server Private IP>
ist die LAN-IP der Synology Box. Der Port
51820
ist der Standardport für WireGuard, er kann aber auch beliebig gewählt werden.
Den Server startet man dann via
wg-quick up wg0
. Wichtig ist dann noch sicherzustellen, dass Port
51820
auf der Synology Box vom Internet her via
<Sever Public IP>:51820
erreichbar ist, was üblicherweise mittels Port Forwarding auf dem Router geschieht.
Danach sollte eine Verbindung vom Client zum Server aufgebaut werden können und die Synology Box über diese Verbindung erreichbar sein.