Raspberry Pi als VPN-Server mit WireGuard

Möchte man unterwegs auf seine privaten Daten im Heimnetzwerk zugreifen oder aber über eine verschlüsselte Verbindung im Internet recherchieren, weil man über einen öffentliches W-LAN verbunden ist, braucht man einen VPN-Server. Mit Hilfe eines VPN-Client wird dann eine sichere und verschlüsselte Verbindung in das eigene Heimnetzwerk hergestellt, egal wo man sich auf der Welt befindet.

Oft hat man die Möglichkeit, einen VPN-Server direkt auf dem eigenen Router zu aktivieren. Bietet der eigene Router, welcher durch den Provider zur Verfügung gestellt wird, keine Möglichkeit, einen VPN-Server zu betreiben, kann man mit einem Raspberry Pi und PiVPN ein einfacher, schneller und sicherer VPN-Server im Heimnetzwerk einrichten.

Welche Hardware braucht es dazu?

  • Einen Raspberry Pi 3 B+ oder 4
    • SD-Karte min. 8 GB
    • Netzteil
    • Gehäuse
  • Netzwerkkabel

Ist noch kein Raspberry Pi zu Hause vorhanden, findet man viele Anbieter, welche den Raspberry Pi in einem Bundle anbieten. Das heisst, alle benötigen Komponenten, werden mitgeliefert. Einfach eine Suche nach Raspberry Pi Bundle durchführen.

Welche Software braucht es dazu?

  • Raspberry Pi OS Lite
  • PiVPN mit WireGuard
  • WireGuard für Desktop oder Mobile

Installation

Die Installation führen wir mit folgenden Schritten durch:

  1. Raspberry Pi OS Lite installieren auf der SD-Karte (mit Raspberry Pi Imager)
  2. SSH aktivieren und Raspberry Pi starten
  3. Pi OS aktualisieren
  4. PiVPN installieren und WireGuard konfigurieren
  5. WireGuard Client-Konfiguration erstellen
  6. Portforwarding auf Router einrichten
  7. VPN-Client installieren und testen

Nützliche Links:

WireGuard Webseite

PiVPN Webseite

WinSCP

Raspberry Pi Webseite

Raspberry Pi Imager

Raspberry Pi – mit PiVPN WireGuard Clients verwalten

Neuer Client erstellen

Die Client-Konfiguration wird verwendet, um mit einem WireGuard-Client eine VPN-Verbindung herzustellen. Um einen neuen Client zu erstellen, wird folgender Befehl verwendet:

> pivpn add

Client löschen / entfernen

Wird ein Client gelöscht, ist es nicht mehr möglich, sich mit dem VPN-Client zu verbinden.

> pivpn remove

Alle Clients aufliesten

Auflistung aller vorhandenen Clients-Konfigurationen.

> pivpn list

Alle Clients mit Verbindungsstatus anzeigen

Auflistung aller aktiven Clients.

> pivpn clients

QR-Code einer Client-Konfiguration erstellen

Durch das erstellen des QR-Codes kann auf einfache Weise die Client-Konfiguration auf ein Mobilephone übertragen werden. Voraussetzung ist die installierte WireGuard App.

> pivpn -qr

Nützliche Links

WireGuard

Raspberry Pi als VPN-Server mit WireGuard

Raspberry Pi – PiVPN installieren und WireGuard konfigurieren

Mit dem Installations-Skript PiVPN können wir auf einfache Weise einen VPN-Server installieren und konfigurieren. Dazu wird folgender Befehl in der Raspberry Pi Konsole eingegeben:

Damit wird das Skript heruntergeladen und ausgeführt:

Wir klicken uns durch das Set-up-Menu und geben die benötigten Informationen an. Ist man sich unsicher, welche Auswahl getroffen werden soll, kann man ohne Probleme die Standardeinstellungen verwenden. Braucht man spezielle Einstellungen, wird man diese meistens kennen.

Als VPN wird WireGuard ausgewählt und mit “ok” bestätigt. Das Installaltions-Skript führt nun die benötigten Schritte aus und installiert die nötigten Komponenten.

Nun gibt es die Möglichkeit, den Standardport zu ändern oder dieser zu belassen.

Als Nächstes definieren wir den gewünschten DNS-Provider. Brauchen wir keine speziellen Einstellungen, kann das Quad9 DNS-Netzwerk genutzt werden.

Haben wir eine öffentliche fixe IP-Adresse, können wir “Use this public IP” auswählen. Ist keine vorhanden, müssen wir dies über eine Dynamische DNS Konfiguration lösen. Hilfe zur Konfiguration finden wir über eine Suchmaschine.

Als Nächstes können wir das automatische Installieren von Updates aktivieren. Damit dies auch korrekt funktioniert, muss jedoch der Raspberry Pi zwischendurch neu gestartet werden.

Nach diesem Schritt werden nun noch die “Server-Keys” generiert. Konnten die Server-Schlüssel generiert werden, ist es an der Zeit, den Raspberry Pi neu zu starten. Danach ist die Installation fertiggestellt.

Nützliche Links

Raspberry Pi als VPN-Server mit WireGuard

Raspberry Pi OS Lite installieren mit dem Raspberry Pi Imager

Raspberry Pi – SSH aktivieren

Raspberry Pi – Betriebsystem updaten / aktualisieren