Raspberry Pi mit WireGuard als VPN Server

Aufbau und Setup

  • Raspberry Pi 3 mit Raspbian Stretch Lite
  • der Pi hängt im LAN hinter dem Hauptrouter
  • LAN: 192.168.150.0/24 (Pi: 192.168.150.200)
  • VPN Netz: 10.10.10.0/24 (VPN Server: 10.10.10.1, VPN Client1: 10.10.10.2, VPN Client2: 10.10.10.3)
  • Clients als Road Warrior (Smartphone und Notebook)

Installation

WireGuard auf dem Raspberry Pi installieren. (Zur Vereinfachung alles als root.)

Aktivieren von IPv4 forwarding in der /etc/sysctl.conf

Den Pi neu starten und die Änderungen nochmal überprüfen.

Keys generieren

Die Erstellung der keys wird im Verzeichnis /etc/wireguard durchgeführt.
Um sicherzustellen dass alle Dateien die richtigen Berechtigungen haben, muss die umask auf 077 gesetzt sein.

Server Key generieren

private und public key für den Server

Client Keys generieren

private und public key für die Clients

Server Konfiguration

Dazu wird die Datei /etc/wireguard/wg0.conf erstellt. (Die neue VPN Schnittstelle ist wg0.)

Client Konfiguration

Für jeden Client erstelle ich eine eigene Konfigurationsdatei.

/etc/wireguard/client1.conf

/etc/wireguard/client2.conf

Als DNS Server nutze ich meinen eigenen im lokalen LAN und mit 0.0.0.0/0 wird alles (der komplette traffic) durch das VPN geroutet.
Da ich mich hinter einem NAT befinde, wird mit PersistentKeepalive = 25 versucht die Verbindung aufrecht zu halten.

WireGuard starten

WireGuard beim Systemstart automatisch laden.

WireGuard Status

Status der aktiven wg0 Schnittstelle.

Firewall Konfiguration

Der UDP Port 51820 muss an den internen VPN Server weitergeleitet werden. (hier für meinen MikroTik Router)

Road Warrior – Android Client

Für Android nehme ich die offizielle WireGuard App aus dem Google Play Store.

Die Einstellungen der App kann mittels einer Datei, QR-Code oder manuell erfolgen. Auf dem Server wird ein QR-Code für den Client1 erstellt.

QR-Code für den Client1 erstellen.

Abscannen und fertig. Ohne die mühselige tipperei auf dem Smartphone.

Road Warrior – Windows Client

Info auf der https://www.wireguard.com/install/ Seite: A Windows client is coming soon.

In the meantime, you are strongly advised to stay away from Windows clients that are not released from this site,
as they may be dangerous to use, despite marketing efforts.

Also abwarten …

Fazit

Im Vergleich zu OpenVPN ist die Einrichtung und Konfiguration, trotz der langen Anleitung, in wenigen Minuten erledigt.
Der Tunnelaufbau und das Routing funktionierten auf Anhieb reibungslos und schnell.

Links

 

Schreibe einen Kommentar