ubuntuusers.de

Client-Server Architektur

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Neben der Peer-To-Peer-Architektur, die im Hauptartikel beschrieben ist, gibt es noch die Client-Server-Architektur. Diese hat den Vorteil, dass nicht alle Clients eine DDNS Adresse brauchen, bzw. die IP Adressen der Clients nicht bekannt sein müssen.

Installation

Die Installation wurde schon im Hauptartikel beschrieben

Konfiguration

Client-Server-WireGuard.png

Vorbereitung

Wenn der Server keine feste globale IP Adresse hat, sollte man diese zuerst konfigurieren. Hierbei hilft das erstellen einer Domain, welche mit der neuesten dynamischen Adresse verbunden ist. Erklärt wird dies in diesem Artikel DDNS-Clients

Server

Als erstes sollte man die erforderlichen Schlüssel im Verzeichnis /etc/wireguard generieren. [1][2]

cd /etc/wireguard
sudo wg genkey > private.key
sudo wg pubkey > public.key < private.key
sudo wg genpsk > psk.key 

Nun muss in die Datei /etc/network/interfaces folgendes hinzugefügt werden. Damit die WireGuard Schnittstelle bei jedem Start mitgestartet wird.

auto wg0
iface wg0 inet static
        address 192.168.4.1
        netmask 255.255.255.0
        pre-up ip link add wg0 type wireguard
        pre-up wg setconf wg0 /etc/wireguard/wg0.conf
        up ip link set wg0 up
        down ip link delete wg0

Nun muss die Datei /etc/wireguard/wg0.conf erstellt werden. Die erforderlichen Informationen finden sich in den WireGuard-Ordnern von Server und Clients.

[Interface]
PrivateKey = Privat Key vom Server 
ListenPort = 50002

[Peer]
PublicKey = Public Key vom Client
PresharedKey = Preshared Key von Client und Server
AllowedIPs = 192.168.4.2/32

Weil in dieser Datei sicherheitskritische Schlüssel enthalten sind, sollte man auf jeden Fall die Rechte für die Datei einschränken. [4]

sudo chmod 0600 /etc/wireguard/wg0.conf 

Client

Achtung!

Wenn als IP des Servers, eine dynamische Adresse verwendet wird, muss man der Problembehandlung WireGuard (Abschnitt „Probleme-mit-der-dynamischen-IP“) folgen.

Auch hier müssen diese Zeilen in die Datei /etc/network/interfaces hinzugefügt werden.

auto wg0
iface wg0 inet static
        address 192.168.4.2
        netmask 255.255.255.0
        pre-up ip link add wg0 type wireguard
        pre-up wg setconf wg0 /etc/wireguard/wg0.conf
        up ip link set wg0 up
        down ip link delete wg0

Und diese Datei /etc/wireguard/wg0.conf mit diesen Zeilen erstellt werden.

[Interface]
PrivateKey = Privat Key vom Client

[Peer]
PublicKey = Public Key vom Server
PresharedKey = Preshared Key von Client und Server
Endpoint = beispiel.domain.de:50002
AllowedIPs = 192.168.4.0/24
PersistentKeepalive = 25 # Sendet die eigene IP Adresse an den Server

Auch die Rechte für diese Datei sollte man auf jeden Fall einschränken.

sudo chmod 0600 /etc/wireguard/wg0 

Client 2 und mehr

Um noch mehr Clients hinzuzufügen, muss die Grundkonfiguration wie zuvor erklärt eingefügt und abgeändert werden.

Und beim Server, muss man in der /etc/wireguard/wg0 nur den Abschnitt [Peer] vervielfältigen.

LAN miteinbeziehen

Die Konfiguration, um das LAN von Clients und/oder Server einzubeziehen steht im Hauptartikel

Diese Revision wurde am 23. Juli 2019 22:41 von Gruentee erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Netzwerk