*** Raspberry Pi VPN https://blog.helmutkarger.de/category/projekte/raspberry-pi-vpn/ *** https://www.pcwelt.de/ratgeber/VPN_mit_dem_Raspberry_Pi_-_so_geht_s-Sicher_surfen-8640499.html 1. Der VPN-Server, also der Raspberry Pi oder der Linux-Rechner, braucht im LAN eine feste IP-Adresse vom Router. Diese Vorarbeit erledigt man in der Administrationsoberfläche des Routers anhand der MAC-Adresse des VPN-Servers. Je nach Routermodell unterscheidet sich die Einrichtung der festen IP für einen Rechner im LAN. Bei der AVM Fritzbox lautet die Funktion „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“ und ist unter Heimnetz -> Heimnetzübersicht -> Netzwerkverbindungen -> Bearbeiten“ zu finden. 2. Diese feste lokale IP-Adresse muss nun durch eine Portweiterleitung des Routers von außen aus dem Internet erreichbar sein. Ein Beispiel dazu: Der übliche Port für Open VPN ist der Port 1194. Wenn der Open-VPN-Server im LAN die IP 192.168.1.77 hat, dann muss der Router den Verkehr vom Typ UDP des Ports 1194 auf die lokale IP-Adresse des Raspberry und den dortigen Port 1194 umleiten. 3. Die öffentliche Internet-IP ist bei DSL-Anbindung nicht feststehend, da der Provider bei jedem Verbindungsaufbau und mindestens einmal täglich eine zufällige neue IP-Adresse vergibt. Hier kommt ein dynamischer DNS-Dienst wie beispielsweise das kostenlose No-IP zur Hilfe, das einer sich ändernden IP-Adresse nach Rückmeldung durch den Router einen festen Hostnamen zuteilt. Die meisten DSL-Router unterstützen No-IP und teilen dem Dienst automatisch bei jeder Neuverbindung die zugeteilte IP mit. Pi VPN: Erster Start Weil es sich um ein Bash-Script handelt, verlangt Pi VPN keine Installation im eigentlichen Sinne. In der Kommandozeile laden Sie mit wget wget -O pivpn https://install.pivpn.io einfach das Script in das aktuelle Verzeichnis herunter und starten es von dort: bash pivpn Für einige Aktionen wird das Script nach dem sudo-Passwort fragen und zunächst automatisch per apt-get die noch benötigten Pakete installieren. Danach beginnt die eigentliche Einrichtung von Open VPN über die englischsprachigen Menüs von Pi VPN: Die Pfeiltasten bewegen den Cursor zwischen Optionen und Tab wechselt zu „OK“ beziehungsweise „Cancel“. Pi VPN beginnt mit dem Hinweis, dass eine statische IP-Adresse konfiguriert werden sollte. Wenn dieser Schritt schon in den Vorarbeiten auf dem Router erledigt wurde, überspringen Sie diesen Punkt. Der nächste Dialog „Choose a local user that will hold your ovpn configurations“ fragt nach einem lokalen Benutzerkonto, in dem die Open-VPN-Konfiguration liegen soll. Hier wählen Sie das eigene Benutzerkonto aus. Im folgenden Schritt schlägt Pi VPN vor, automatische Updates („unattended upgrades“) einzuschalten, falls dies noch nicht der Fall ist. Die anschließende Frage, ob UDP oder TCP als VPN-Protokoll zum Einsatz kommen soll, belässt man auf UDP. Auch die vorgeschlagene Portnummer sollte bei 1194 bleiben, da dies der Standardport für Open VPN ist. Die empfohlene Schlüssellänge von 2048 Bit ist ebenfalls in Ordnung. Danach erstellt Pi VPN die serverseitigen kryptografischen Schlüssel, was auf kleinen Platinenrechnern wie dem Raspberry Pi eine Weile dauert. Der Dialog „Public IP or DNS“ fragt dann, ob der VPN-Server per IP-Adresse oder per Hostname („DNS Entry“) erreichbar ist. Im Fall eines heimischen Servers ist das der dynamische Hostname, den sich der Router bei einem der eingerichteten DNS-Dienste holt (No-IP oder vergleichbar). Der nächste Schritt gibt eine Reihe an DNS-Servern zur Auswahl, die Clients verwenden sollen, wenn diese über das VPN das Internet nutzen. Danach schlägt Pi VPN einen Neustart vor, um den Open-VPN-Dienst in Gang zu setzen. Siehe auch: Cleveres Zubehör für Raspberry Pi & Odroid Die Netzwerkclients hinzufügen Auch für das Erzeugen von VPN-Zertifikaten, mit der sich Clientrechner bei Open VPN anmelden, hat Pi VPN ein Hilfs-Script parat: Mit dem Kommando pivpn add erstellt man im Nu die Clientkonfigurationsdateien. Dieses Script fragt nur nach dem gewünschten Clientnamen und einem Passwort, anschließend liegt die fertige Konfigurationsdatei mit dem Namen „[Client].ovpn“ im Ordner „~/ovpns“. Nur diese eine Datei benötigt man auf den zugreifenden Clients und kann sie dort in den verwendeten Open-VPN-Client importieren. Der Clou: Auch alle Schlüssel und das Serverzertifikat sind in dieser einen Datei untergebracht. Das Script kann mittels pivpn revoke auf Wunsch einen Client jederzeit auch wieder entfernen.