VPN und Deutsche Glasfaser
(Beitrag aktualisiert am 03.04.2024)
Problem
Wer von unterwegs per VPN (Abkürzung für Virtual Private Network) auf sein Heimnetzwerk (z.B. auf ein NAS) zugreifen möchte, der nutzt üblicherweise die bekannten VPN-Lösungen z.B. von der FritzBox oder einen OpenVPN-Server auf einer Synology-Diskstation (NAS).
Wenn man bislang zu Hause einen (V)DSL-Anschluss der Telekom genutzt hat, konnte das Ganze recht einfach und kostenfrei bewerkstelligt werden, denn von der Telekom bekam und bekommt man eine öffentliche IPv4-Adresse zugewiesen, mit der man VPN-Zugriffe von unterwegs mit den genannten Werkzeugen hinbekommt.
Die öffentliche IPv4-Adresse ist das Problem im Zusammenhang mit einer Umstellung des Zugangs ins Internet auf einen Glasfaseranschluss der Deutschen Glasfaser (DG). Bei der Telekom und anderen Providern erhält man eine solche automatisch oder aufpreispflichtig als Zubuchoption. Die DG hingegen bietet derartiges für Privatkunden nicht an.
Der Grund hierfür liegt darin, dass öffentliche IPv4-Adressen seit Jahren knapp sind, die DG daher den Privatkunden eine öffentliche IPv6-Adresse bereitstellt und für IPv4 (welches üblicherweise für VPN benötigt wird) Dual Stack mit CGNAT verwendet, mit der Folge, dass man sich eine IPv4-Adresse mit anderen teilen muss und diese sich häufiger ändert. Im Internet findet man zu den technischen Hintergründen entsprechende Informationen, für meine Lösung sind diese jedoch nicht relevant und daher spare ich dieses Thema hier aus.
Fakt ist jedenfalls, dass man für einen Zugriff von außen auf das Heimnetzwerk unter Verwendung eines VPN-Systems eine öffentliche IPv4-Adresse benötigt, jedenfalls dann, wenn man aus allen Fremdnetzwerken (Mobilfunk im In- und Ausland, WLAN-Hotspots und fremde WLAN-Netze) garantierten Zugriff haben möchte.
Zwar bietet die FritzBox ab Fritz!OS Version 7.50 für ihr eigenes (IPSec) sowie das neue WireGuard VPN mittlerweile auch Unterstützung für ein VPN über IPv6 an. Allerdings lässt sich eine Verbindung über ein reines IPv6-VPN - welches im Netz der DG mit den FritzBox-eigenen VPNs allein möglich wäre - nicht herstellen, wenn im Fremdnetz, über das der Zugang zum Heimnetz über VPN hergestellt werden soll, keine IPv6-Unterstützung, sondern nur Unterstützung für IPv4 vorhanden ist. Da man nach meiner Erfahrung gerade in fremden WLAN-Netzwerken oder Hotspots häufig immer noch keine IPv6-Unterstützung vorfindet, ist diese (kostenlose) Lösung daher nur zu empfehlen, wenn man sicher weiß, dass man im Fremdnetz IPv6-Support hat. Sonst läuft man Gefahr, keine Verbindung zum Heimnetz aufbauen zu können. Nähere Informationen zu den FritzBox-eigenen VPNs findet man auf den Supportseiten von AVM für IPSec und WireGuard.
Lösung
Um mit einem Glasfaseranschluss der DG weiterhin von unterwegs aus allen Netzwerken (über IPv4 und/oder IPv6) auf das Heimnetzwerk zugreifen zu können, verwende ich folgende Komponenten:
- OpenVPN-Server auf einer Synology-Diskstation
- FritzBox 7590 (am Glasfaseranschluss) mit MyFRITZ!-Freigabe sowie Portfreigabe für OpenVPN
- Optional für FritzOS < 7.50: DynDNS über dynv6 zur automatisierten Weitergabe der IPv6-Adresse der Synology-Diskstation (kostenlos)
- Öffentliche IPv4-Adresse über Feste-IP.net oder einen Virtuellen Private Server (VPS)
- OpenVPN Connect, Passepartout-App (iOS) oder OpenVPN für Android bzw. VPN Client Pro (Android) für den Fernzugriff von mobilen Endgeräten
- FRITZ!App Fon zum Telefonieren von unterwegs im VPN über die FritzBox
Einzelheiten
Zu 1.: OpenVPN-Server auf einer Synology-Diskstation
Zunächst einmal: Es gibt verschiedene Möglichkeiten, einen VPN-Server aufzusetzen. Die Synology-Diskstation ist nur eine von vielen Alternativen. Da ich bereits vor der Umstellung auf Glasfaser eine Diskstation genutzt habe, lag es nahe, dabei zu bleiben und auch den zuvor schon genutzten Open-VPN-Server der Diskstation weiterzunutzen. Man kann genauso gut aber andere Systeme (z.B. Raspberry Pi, QNAP-NAS) nutzen, um den Server aufzusetzen.
Wichtig ist, dass das auf der FritzBox vorhandene VPN im Netz der DG wegen der fehlenden öffentlichen IPv4-Adresse nicht genutzt werden kann, wenn man aus einem reinen IPv4-Netz Zugriff auf das Heimnetz haben will. Der VPN-Server muss also auf einem an die FritzBox angeschlossenen, im Heimnetzwerk befindlichen externen Gerät betrieben werden. Wenn man ein NAS wie die Synology-Diskstation nutzt oder nutzen möchte, ist dies die einfachste Lösung.
Wie man einen OpenVPN-Server auf einer Synology-Diskstation generell aufsetzt, findet man in entsprechenden Anleitungen im Internet, weshalb ich hier nur auf die Besonderheiten im Zusammenhang mit DG eingehen will.
- Ganz wichtig: Zunächst ist sicherzustellen, dass die Synology-Diskstation eine IPv6-Adresse im Netzwerk zugewiesen bekommt. Hierzu sind die Einstellungen der FritzBox (unter Internet > Zugangsdaten > IPv6 entsprechend Bild 1a und unter Heimnetz > Netzwerk > Netzwerkeinstellungen > IP-Adressen > IPv6-Einstellungen entsprechend Bild 1b und 1c) und die Netzwerkeinstellungen der Diskstation in DSM (unter Netzwerkschnittstelle > LAN > Bearbeiten > IPv6 > IPv6-Setup: "Automatisch" oder "DHCPv6-PD", entsprechend Bild 1d) zu prüfen und ggf. anzupassen.
- Die Einstellungen des OpenVPN-Servers der Synology-Diskstation können entsprechend Bild 1e vorgenommen werden.
- Wichtig: Als Port muss 1194 eingetragen sein.
- Ganz wichtig, sofern man in der weiteren Installation auf Fest-IP.net setzen möchte (siehe unten): Das Protokoll muss in dem Fall von UDP (eigentlich der Standard für OpenVPN mit Port 1194) zwingend auf TCP umgestellt werden, sonst funktioniert die Weiterleitung über Feste-IP.net nicht! Feste-IP.net funktioniert nur mit dem TCP-Protokoll. Wenn man später - anstelle von Feste-IP - die Lösung über ein VPS geht, funktioniert es aber auch mit UDP.
- Optional: Möchte man im VPN auch eine IPv6-Adresse haben, muss in den Netzwerkeinstellungen der Diskstation (siehe oben) zwingend "DHCPv6-PD" anstatt "Automatisch" ausgewählt werden. In den OpenVPN-Einstellungen ist dann ein Haken bei "IPv6-Servermodus aktivieren" zu setzen und ein Präfix aus der Liste auszuwählen. Außerdem muss dann in den IPv6-DHCP-Einstellungen der FritzBox (entsprechend Bild 1c) "DNS-Server, Präfix (IA_PD) und IPv6-Adresse (IA_NA) zuweisen" ausgewählt sein.
Bild 1a:
Bild 1b:
Bild 1c:
Bild 1d:
Bild 1e:
Zu 2.: FritzBox 7590 (am Glasfaseranschluss) mit MyFRITZ!-Freigabe sowie Portfreigabe für OpenVPN
Im Konfigurationsmenü der FritzBox 7590 (es kann auch eine andere FritzBox verwendet werden) müssen zwei Dinge eingestellt werden:
- Siehe auch Bild 2: Unter "Internet" > "MyFRITZ!-Konto" müssen ein Haken bei "MyFRITZ! für diese FRITZ!Box aktiv" gesetzt und die E-Mail-Adresse des MyFRITZ!-Kontos eingetragen werden. Dann auf "Übernehmen" klicken. Danach sollte ein grünes Lämpchen leuchten und der Zusatz "Ihre FRITZ!Box ist bei MyFRITZ! angemeldet" erscheinen. Unter "MyFRITZ!-Internetzugriff" sollte dann die "MyFRITZ!-Adresse" erscheinen.
Bild 2:
- Unter "Internet" > "Freigaben" ist im Reiter "Portfreigaben" auf "Gerät für Freigaben hinzufügen" zu klicken. Im darauf erscheinenden Menü muss zunächst das Gerät ausgewählt werden, also die Synology-Diskstation, die mit dem Netzwerk verbunden ist. Nach der Auswahl des Geräts sollten die IPv4-Adresse, die MAC-Adresse und die IPv6 Interface ID der Diskstation automatisch eingetragen sein. Danach kann man unter IPv6-Einstellungen einen Haken bei "PING6 freigeben" machen. Dann auf "Neue Freigabe" ganz unten klicken. Im sich öffnenden Fenster folgende Einstellungen vornehmen: "MyFRITZ!-Freigabe" aktivieren; "Andere Anwendung" auswählen; "Bezeichnung" eingeben (Text ist egal, z.B. VPN); "Schema": https://; "Port an Gerät": 1194; Haken bei "Freigabe aktivieren" machen; danach auf OK drücken. Wichtig: Danach nochmals auf OK drücken, damit die Freigabe wirksam wird.
- Zur Kontrolle sollte man jetzt nachschauen, ob das grüne Lämpchen neben der Portfreigabe leuchtet (siehe Bild 3). Es müssen zwei Einträge mit Portfreigaben erzeugt worden sein: Einer mit einer IPv4-Adresse und einer mit einer IPv6-Adresse unter "IP-Adresse im Internet"! Diese IPv6-Adresse ist extrem wichtig und wird - sofern kein DynDNS und auf der FritzBox noch ein FritzOS < 7.50 eingesetzt wird (siehe unten Schritt 3.) - bei der Konfiguration von Feste-IP.net bzw. des VPS noch benötigt.
- Indem man auf das Stiftsymbol neben/unter der Portfreigabe drückt, müsste jetzt auch die automatisch von der FritzBox erzeugte MyFRITZ!-Adresse für die Synology-Diskstation zu sehen sein (z.B. https:// synologynas. ab1c2defghijklmn. myfritz.net :1194). Diese ist (mit FritzOS 7.50 oder größer) - leicht angepasst - anstelle der o.g. IPv6-Adresse für die Einrichtung des Portmappers in Feste-IP.net bzw. im VPS erforderlich (siehe unten Schritt 4.).
Bild 3:
Zu 3.: Optional für FritzOS < 7.50: DynDNS über dynv6 zur automatisierten Weitergabe der IPv6-Adresse der Synology-Diskstation
Da sich der IPv6-Präfix im Heimnetz von Zeit zu Zeit ändert (nach meiner Erfahrung jedoch nicht allzu oft, jedenfalls nicht bei jedem Neustart der FritzBox) kann es sinnvoll sein, zusätzlich einen DynDNS-Dienst einzusetzen, um diesem die aktuelle IPv6-Adresse des OpenVPN-Servers mitzuteilen. Dies ist jedoch optional und nicht zwingend. Wichtig: Ein externer DynDNS-Dienst wird nur benötigt, sofern man noch eine ältere Version als FritzOS 7.50 auf seiner FritzBox hat. Zudem kann man die aktuelle IPv6-Adresse des OpenVPN-Servers (hier der Synology-Diskstation) auch manuell in Schritt 4. (Einrichtung Feste-IP.net/VPS) eingeben und aktuell halten.
Bei der Verwendung eines DynDNS-Dienstes für diesen Zweck sind zwei Probleme zu umschiffen: Zum einen muss dieser IPv6 unterstützen und zum anderen mit dem DynDNS der FritzBox kompatibel sein. Das DynDNS der Synology-Diskstation beherrscht nämlich leider kein IPv6. Dies war nur über das Zusatzprogramm "DDNS Updater 2" möglich. Leider wird dieses Programm unter der Synology DSM Version 7 nicht mehr unterstützt, so dass nach aktuellem Stand das DynDNS der Synology-Diskstation nicht nutzbar unter IPv6 ist.
Abhilfe schafft dabei der kostenlose Dienst dynv6.com, welcher sich bei den DynDNS-Einstellungen der FritzBox eintragen lässt und Unterstützung für reines IPv6 (AAAA-Record) bietet.
Vorgehensweise:
- Zunächst ist ein Account bei dynv6 zu erstellen unter: https://dynv6.com/users/sign_up.
- Dann muss eine Zone erstellt werden unter: https://dynv6.com/zones/new (siehe nachfolgendes Bild 4).
- Unter "Name" trägt man einen selbst gewählten Namen ein, der später den ersten Teil der DynDNS-Adresse bildet, z.B. "MeinDNS". Bei den Endungen ist "dynv6.net" vorausgewählt, es stehen zudem weitere Endungen zur Verfügung. Der komplette Name in meinem Beispiel würde also "MeinDNS.dynv6.net" lauten.
- Die Felder bei "IPv4 Adress" und "IPv6 prefix" bleiben leer, anschließend auf "Create Zone" klicken.
Bild 4:
- Es öffnet sich eine Seite mit "Installation instructions". Wichtig sind dabei vor allem die Update-URL, der Domainname und der Benutzername, die man am Ende der Seite vorfindet (siehe Bild 5 nachfolgend).
Bild 5:
- Die genannten Daten benötigt man nun im Konfigurationsmenü der FritzBox. Dort geht man in das Menü "Internet" > "Freigaben" > "DynDNS" (siehe nachfolgendes Bild 6). Dort ist zunächst der Haken "DynDNS benutzen" zu setzen.
- Sollte dort der Eintrag "DynDNS-Anbieter" zu finden sein (ist unter Fritz!OS 7.50 nicht mehr der Fall), ist "Benutzerdefiniert" zu wählen.
- Sodann muss die Update-URL eingetragen werden. Hierfür wird nur die zweite Update-URL der "Installation instructions" von dynv6 benötigt (also die mit dem Syntax "ip6addr"); die erste URL ist nur für IPv4-DynDNS geeignet. Bei der zweiten URL setzt man ein "s" hinter "http". Die URL wäre daher wie folgt in das Menü der FritzBox einzugeben:
https://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv6=<ip6addr>&ipv6prefix=<ip6lanprefix>
- Allerdings sind die meisten Parameter in eckigen Klammern lediglich Platzhalter und müssen durch die individuellen Einstellungen (entnommen aus den "Installation instructions" von dynv6) noch angepasst werden. Dazu gehören:
- <ip6addr> : Dieser Platzhalter bewirkt normalerweise, dass die FritzBox die IPv6-Adresse der FritzBox an dynv6 weiterleitet. Allerdings benötigen wir die IPv6-Adresse des OpenVPN-Servers, in meinem Fall also der Synology-Diskstation. Aus diesem Grunde muss der Platzhalter durch die IPv6-Interface-ID der Synology Diskstation ersetzt werden. Diese finden wir im Menü der FritzBox unter "Heimnetz" > "Netzwerk" > Stiftsymbol neben dem Eintrag für die Synology-Diskstation. Sie fängt immer mit zwei Doppelpunkten an, z.B. wie folgt: "::1234:x0xx:xx01:5678". Bitte den Platzhalter <ip6lanprefix> dagegen so belassen, denn wir möchten ja gerade den aktuellen Präfix der FritzBox übermittelt bekommen.
- Da die FritzBox allerdings offenbar Probleme mit einer Ersetzung des Parameters <ip6addr> hat, muss dieser noch in der URL als "Dummy" erhalten bleiben; daher wird an die URL noch folgendes angehängt: "&trash=<ip6addr>". Damit gibt sich die FritzBox dann zufrieden.
- <domain> : Hier wird der Domainname eingetragen (in meinem Beispiel also: "MeinDNS.dynv6.net".
- <username> : Bitte durch den Benutzernamen der "Installation instructions" von dynv6 ersetzen, z.B. "AbcdeFghi7jK4lmnOpQrstU".
- Die fertige Update-URL sähe in meinem Beispiel also wie folgt aus (ohne Leerzeichen dazwischen):
https://dynv6.com/api/update?hostname=MeinDNS.dynv6.net &token=AbcdeFghi7jK4lmnOpQrstU &ipv6=::1234:x0xx:xx01:5678 &ipv6prefix=<ip6lanprefix> &trash=<ip6addr>
- Die weiteren Eingaben im FritzBox-Menü unter "Domainname" und "Benutzername" sind den "Installation instructions" von dynv6 zu entnehmen. Als Kennwort ist "none" einzutragen. Mit Klick auf "Übernehmen" werden die Einstellungen gespeichert.
Bild 6:
- Das DynDNS sollte daraufhin funktionieren. In den Einstellungen von dynv6 taucht im Reiter "Records" ein AAAA-Eintrag mit der aktuellen IPv6-Adresse der Synology-Diskstation auf (siehe Bild 7):
Zu 4.: Öffentliche IPv4-Adresse über Feste-IP.net oder einen Virtuellen Private Server (VPS)
Dieser Schritt ist der Entscheidende, damit der Fernzugriff auf das Heimnetz im DG-Netz über VPN funktioniert, denn wie bereits oben angesprochen gibt es bei der DG keine öffentliche IPv4-Adresse.
Es besteht somit die Notwendigkeit, dem VPN-Server auf eine andere Art eine öffentliche IPv4-Adresse zu verschaffen. Dies muss über einen externen Dienst erfolgen, der - leider - nur kostenpflichtig zu haben ist.
Zwei Möglichkeiten werden hier aufgezeigt: Entweder der klassische Weg, d.h. der in meinem Artikel hier von Anfang an dargestellte dedizierte Portmapper von Feste-IP.net nebst zugebuchter IPv4-Adresse (hierzu nachfolgend Abschnitt a.) oder alternativ über einen Virtuellen Private Server (VPS) (hierzu Abschnitt b.). Die Vor- und Nachteile der beiden Lösungen werden abschließend unter c. gegenübergestellt.
a. IPv4-Adresse mit dediziertem Portmapper von Feste-IP.net
Auf die Tatsache, dass Feste-IP.net ein kostenpflichtiger Dienst ist, wurde schon hingewiesen. Mit folgenden Kosten pro Jahr (Stand: April 2024) muss man dabei rechnen:
- 5,80 € für den dedizierten Portmapper (Credit-Paket für 365 Tage),
- 33,00 € für eine IPv4-Adresse (für 12 Monate).
Feste-IP.net bietet aber auch eine Buchung der IPv4-Adressen für kürzere Zeiträume an (1 Monat: 3,85 €, 6 Monate: 19,47 €). Hinzu kommt aber evtl. ein Credit-Paket für mindestens 365 Tage (5,80 €), wenn die kostenlosen Start-Credits (für 50 Tage) schon abgelaufen sind.
Einrichtung: Vollständigen Artikel einblenden Text schließen
b. Virtueller Private Server (VPS) auf Linux-Basis
Diese Lösung ist die Alternative zu Feste-IP.net, welche aber lediglich einen kleinen Baustein der Gesamtlösung darstellt, der allein den Portmapper von Feste-IP.net ersetzt. Alle anderen Punkte dieser Anleitung (OpenVPN-Server auf einem Client im Heimnetz, Portfreigabe auf FritzBox, Einrichtung von MyFRITZ oder DynDNS, Erstellung und Konfiguration des OpenVPN-Profils und Einrichtung der Client-Apps) müssen auch bei Nutzung eines VPS erfolgen.
Hier bieten sich im Wesentlichen zwei Tarife an, die sehr kostengünstig, aber dennoch leistungsfähig sind:
- STRATO VPS Entry Linux VC1-1 (Tarif ab ca. September 2023 abgeschlossen) oder
- IONOS VPS S (vor Mai 2023 abgeschlossen) bzw. VPS Linux XS (ab ca. Dezember 2023 abgeschlossen).
Beide Tarife sind auf Linux-Basis und beiden ist gemein, dass diese jeweils eine IPv4-Adresse beinhalten, die man für den hier dargestellten Zweck ja zwingend benötigt. Preislich liegen die beiden jeweils günstigsten Tarife bei dauerhaft 1 € pro Monat und bieten vergleichbare Leistungen. Der STRATO-Tarif ist im Vergleich zum IONOS XS sogar etwas leistungsstärker (mehr Speicherplatz z.B.).
VPS gibt es natürlich noch von vielen weiteren Anbietern. Viele von diesen sind jedoch meist deutlich teurer als die hier genannten Tarife. Zudem ist eine wichtige Voraussetzung bei der Suche nach einem anderen Tarif zu beachten: Es muss bei Verwendung für einen OpenVPN-Server im Netz der Deutschen Glasfaser zwingend eine IPv6-Unterstützung für den VPS enthalten sein. Dies ist bei STRATO (in allen Tarifen) seit etwa September 2023 der Fall (hier ist in der Leistungsbeschreibung von "IPv6-Ready" die Rede) und kann von mir positiv bestätigt werden. Bei IONOS war dies bis vor kurzem nur bei Alttarifen der Fall, die vor Mai 2023 angeboten wurden. Nach aktuellen Nutzerberichten soll dies bei den neuen Tarifen seit etwa Dezember 2023 auch wieder der Fall sein*.
* Bitte beachten: Dies wird in der IONOS-Produktbeschreibung für den VPS Linux XS derzeit immer noch nicht aktiv beworben und kann von mir auch nicht bestätigt werden, da ich derzeit den STRATO-Tarif nutze. Davor hatte ich einen Alttarif von IONOS, wo es problemlos ging. Alle Angaben daher ohne Gewähr!
Was genau macht nun aber der VPS? Es handelt sich um einen virtuellen Linux-Server, wobei man in der Regel verschiedene Linux-Varianten (z.B. Debian, Ubuntu) zur Auswahl hat. Der Server muss im Kundencenter des jeweiligen Anbieters sowie mit Befehlen über ein Terminalprogramm (z.B. PuTTY, Termius) konfiguriert werden. Insbesondere muss die Anwendung "6tunnel" auf dem Linux-Server installiert und eingerichtet werden. Es ist daher (einmalig) ein höherer Aufwand erforderlich als bei Feste-IP.net; zudem sind (Basis-)Kenntnisse von Linux kein Nachteil. Für wen das alles Böhmische Dörfer sind und wer lieber alles über einen normalen Internetbrowser einrichten möchte, sollte daher eher Feste-IP.net in Erwägung ziehen, auch wenn dieser Dienst über ein Jahr gesehen (deutlich) teurer ist.
Einrichtung: Vollständigen Artikel einblenden Text schließen
c. Vor- und Nachteile der beiden Varianten
Der besseren Übersichtlichkeit wegen hier noch einmal die Vorteile (+) und Nachteile (-) von Feste-IP.net und einem VPS von STRATO oder IONOS:
Feste-IP.net | VPS |
+ Schnelle, relativ unkomplizierte Einrichtung
+ Flexible Laufzeiten auf Prepaid-Basis + Gute Performance + Viele verschiedene Zahlungsmittel (u.a. SEPA-Lastschrift, Kreditkarte, PayPal, Sofortüberweisung, giropay) möglich - Höhere Kosten als mit günstigem VPS-Tarif (38,80 € pro Jahr) |
+ Sehr günstiger Preis (ab 12,00 € pro Jahr) + Gute Performance + Verschiedene Zahlungsmittel möglich, je nach Anbieter (teilweise SEPA-Lastschrift, Kreditkarte oder PayPal-Zahlung) - Einmalige Einrichtung des Servers und von 6tunnel über Terminalprogramm mit Linux-Befehlen erforderlich |
Ich habe alle Services getestet und kann sie auch alle empfehlen. Wer mit Linux kein Problem hat, wird wahrscheinlich zu der deutlich günstigeren VPS-Variante von STRATO oder IONOS greifen; bequemer einzurichten ist jedoch der Portmapper von Feste-IP.net.
Zu 5.: OpenVPN Connect, Passepartout-App (iOS) oder OpenVPN für Android bzw. VPN Client Pro (Android) für den Fernzugriff von mobilen Endgeräten
Zu guter letzt muss man natürlich noch die (mobilen) Endgeräte, mit denen man auf das Heimnetzwerk per VPN zugreifen möchte, einrichten. Zuvor ist allerdings die OpenVPN-Profildatei zu erstellen und zu bearbeiten (hierzu unter a.).
Für Windows-PCs/Laptops benötigt man das Programm OpenVPN Connect (näheres hierzu unter b.).
Für das iPhone/iPad mit iOS/iPadOS gibt es ebenfalls OpenVPN Connect. Ich empfehle und nutze hier allerdings mittlerweile eine andere App, und zwar Passepartout, welche es auch für den Mac gibt (näheres hierzu unter c.).
Für Android-Smartphones/Tablets gibt es gleich mehrere Apps, die man verwenden kann. Wer nur gelegentlich ins VPN möchte und keine Automatisierung benötigt, fährt am besten mit der App OpenVPN für Android. Die "offizielle" Android-App Open VPN Connect hat sich in meinen Tests demgegenüber als deutlich komplizierter erwiesen, weil diese im Hinblick auf das Zertifikat Probleme macht. Sie bietet gegenüber OpenVPN für Android auch keinen Mehrwert. Wer dagegen auf mehr (Komfort-)Funktionen Wert legt, sollte sich unter Android mit dem VPN Client Pro beschäftigen.
a. Erstellung und Bearbeitung der OpenVPN-Profildatei
- Auf dem PC oder einem anderen geeigneten Endgerät (Tablet, Laptop oder stationärer Computer) in DSM der Synology-Diskstation einloggen. Wichtig ist, dass man dort bereits einen/mehrere Benutzer angelegt hat und das Passwort kennt (unter "Systemsteuerung" > "Benutzer"). Dann im VPN Server in DSM auf "Berechtigung" (DSM 7) bzw. "Privileg" (DSM 6) klicken. Dort muss für den betreffenden Benutzer, der OpenVPN nutzen will, ein Haken gesetzt sein (siehe roter Kreis in Bild 25). Der Benutzername wird ebenso noch benötigt wie das Passwort, welches man für den Benutzernamen in DSM festgelegt hat.
Bild 25:
- Im VPN Server der Synology-Diskstation ist sodann unter "VPN Server einrichten" > "OpenVPN" auf die Schaltfläche "Konfigurationsdateien exportieren" zu klicken. Es erfolgt der Download eines ZIP-Archivs mit dem Namen "openvpn.zip". Dieses extrahieren und in ein Verzeichnis der Wahl speichern. Auf jeden Fall benötigt wird die Profildatei "VPNConfig.ovpn"; sofern auch die Zertifikatsdatei "ca.crt" (nur bei DSM 6) dabei ist, kann diese ebenfalls gespeichert werden (wenn Windows genutzt wird; für iOS und Android wird sie nicht benötigt).
- Die Profildatei "VPNConfig.ovpn" muss sodann mit einem Text-Editor (z.B. dem Windows-Editor) bearbeitet werden, da die individuellen Einstellungen darin noch fehlen. Hierzu die Datei mit dem Editor (in Windows mit einem Rechtsklick und "Öffnen mit" > "Editor") öffnen. Darin sind folgende Anpassungen vorzunehmen:
- Vor die Zeile "remote YOUR_SERVER_IP 1194" eine neue Zeile einfügen mit dem Inhalt "dhcp-option DOMAIN fritz.box" (ohne Anführungszeichen eintragen, auch alle nachfolgenden Einträge).
- In der Zeile ("remote YOUR_SERVER_IP 1194") "YOUR_SERVER_IP" durch die IPv4-Adresse ersetzen, die man bei Feste-IP.net bzw. IONOS erhalten hat (siehe oben, Schritt 4), also z.B. "111.22.333.44". Auch "1194" darf nicht gelöscht werden.
- In der Zeile "#dhcp-option DNS DNS_IP_ADDRESS" das Rautezeichen (#) entfernen und "DNS_IP_ADDRESS" ersetzen durch "192.168.178.1". Optional kann man danach eine weitere Zeile neu einfügen mit "dhcp-option DNS 8.8.8.8" (abhängig vom genutzten Endgerät; bei Apple-Geräten und Nutzung von Passepartout ist die Google-DNS-Adresse nicht erforderlich).
- Die dhcp-option mit DOMAIN und die erste mit DNS bewirken, dass bei Bestehen der VPN-Verbindung die anderen Clients im Heimnetz auch mit ihrem Namen anstatt mit der lokalen IP-Adresse ansprechbar sind (Beispiele: fritz.box als Name für die IP-Adresse der FritzBox wie z.B. 192.168.178.1 oder fritz.repeater als Name für die IP-Adresse des FritzRepeaters wie z.B. 192.168.178.15 oder synologynas als Name für die IP-Adresse der Synology-Diskstation wie z.B. 192.168.178.10). Die hier angegebenen IP-Adressen bzw. Namen sind nur Beispiele und müssen an die eigene Netzwerkumgebung angepasst werden. Wenn die IP-Adresse der FritzBox also nicht 192.168.178.1, sondern anders lautet, muss natürlich die korrekte eigene IP-Adresse des Routers in der Profildatei angegeben werden (Hinweis: Es muss auch dann die IP-Adresse des Routers angegeben werden, sofern sich das NAS mit dem OpenVPN-Server in einer eigenen Domäne mit DNS-Server befindet!).
- Die zweite, optionale dhcp-Option ist die Google-DNS-Adresse und bewirkt ggf., dass man auch im VPN eine Internetverbindung hat (dies ist nur erforderlich, falls die IP-Adresse des Routers hierfür nicht schon ausreicht; ggf. ausprobieren).
- Die dhcp-Optionen mit der DOMAIN fritz.box und der DNS IP-Adresse der FritzBox bewirken bei mir mit Clients unter iOS, iPadOS (OpenVPN Connect und Passepartout), Android (OpenVPN für Android) und mittlerweile auch Windows 11 (OpenVPN Connect), dass die o.g. Namensauflösung im VPN funktioniert.
- Speziell zur Funktionsfähigkeit der Namensauflösung in Windows bitte beachten: Neben den hier in der Profildatei vorzunehmenden Einstellungen sollte man vor jeder neu oder geändert eingespielten Profildatei OpenVPN Connect am besten deinstallieren und auch darauf achten, dass in der Windows-Netzwerkkonfiguration (in Windows 11 unter Einstellungen > Netzwerk und Internet > Erweiterte Netzwerkeinstellungen > Weitere Netzwerkadapteroptionen) der TAP-Adapter, der von OpenVPN Connect hier angelegt wurde, ebenfalls gelöscht ist. Erst danach OpenVPN Connect komplett neu installieren, wobei dann automatisch ein neuer TAP-Adapter in den Netzwerkeinstellungen angelegt wird. Ist die VPN-Verbindung aktiv, lässt sich in den IPv4-Einstellungen des TAP-Adapters nachvollziehen, dass die in der Profildatei gemachten DNS-Einstellungen auch übernommen werden. Ich habe zunächst den Fehler gemacht, dass ich OpenVPN Connect nach erfolgten Änderungen der Profildatei nicht deinstalliert habe, weshalb bei mir die Namensauflösung unter Windows 11 lange Zeit nicht funktioniert hat. Seitdem ich dies jedoch mache, läuft die Namensauflösung auch mit Windows einwandfrei.
- Sollte die Namensauflösung in Windows trotz dieser Einstellungen noch nicht funktionieren, gibt es im Internet noch weitere Hinweise, denen man in diesem Fall nachgehen könnte und die ich ebenfalls umgesetzt habe. Insbesondere sollte die Metrik der VPN-Verbindung niedriger sein als die des normalen Ethernet- bzw. WLAN-Adapters, weil diese die Priorisierung der Netzwerkadapter in Windows regelt. Die Metrik der VPN-Verbindung lässt sich mit einem Befehl in Windows Powershell einstellen. Die an dieser Stelle ursprünglich verlinkte Anleitung existiert leider nicht mehr, weitere Anleitungen zur Einstellung der Metrik finden sich aber zahlreich. Ferner kann auch die "SmartNameResolution" in Windows die DNS-Einstellungen beeinflussen. Hierzu empfehle ich eine weitere Anleitung.
- In der Zeile "#redirect-gateway def1" das Rautezeichen (#) entfernen, so dass "redirect-gateway def1" in der Zeile steht.
- Gegebenenfalls eine neue Zeile vor <ca> und dort "client-cert-not-required" einfügen, damit es kein mögliches "Gemecker" wegen eines fehlenden Zertifikats gibt.
- Der Rest ist so zu belassen. Im Menü des Editors unter Datei darf das Speichern nicht vergessen werden.
Der Inhalt der Datei VPNConfig.ovpn könnte also beispielhaft wie folgt aussehen:
dev tun |
tls-client |
dhcp-option DOMAIN fritz.box |
remote 111.22.333.44 1194 |
redirect-gateway def1 |
dhcp-option DNS 192.168.178.1 |
dhcp-option DNS 8.8.8.8 |
pull |
proto tcp-client |
script-security 2 |
comp-lzo |
reneg-sec 0 |
cipher AES-256-CBC |
auth SHA512 |
auth-user-pass |
client-cert-not-required |
<ca> |
</ca> |
|
Anmerkungen zu den in Kursiv dargestellten Inhalten:
|
|
b. Einrichtung OpenVPN Connect mit Windows 10/11
- Zunächst OpenVPN Connect auf dem PC installieren; eine ggf. vorhandene Version deinstallieren (Grund: s. oben).
- Die Zertifikatsdatei "ca.crt" (sofern vorhanden, s. oben) kann man (optional) im Windows-Explorer mit einem Doppelklick installieren und dabei "Aktueller Benutzer", "Alle Zertifikate in folgendem Speicher speichern", Durchsuchen und "OpenVPN Certificate Store" auswählen. Nach mehrfachem Bestätigungsklick sollte die Meldung, dass der Import erfolgreich war, erscheinen.
- Danach das Programm OpenVPN Connect öffnen. Mit einem Klick auf das orange hinterlegte "+" wird ein neues Profil erstellt. Unter "File" und "Browse" ist die OpenVPN-Profildatei auszuwählen, die man eben erstellt und bearbeitet hat. Anschließend sollte der grüne Text "Profile successfully imported" erscheinen. Unter "Username" gibt man den Benutzernamen der Synology-Diskstation ein, dem man oben die Rechte zur OpenVPN-Nutzung gewährt hat. Nach Setzen des Hakens bei "Save password" ist das zugehörige Passwort des Benutzers der Diskstation einzugeben. Unter "Certificate" ist die oben installierte Zertifikatsdatei auszuwählen. Anschließend auf "Add" klicken. Unter "Profiles" kann man das eben eingerichtete Profil sehen und mit Klick auf den Schieberegler wird die VPN-Verbindung gestartet.
c. Einrichtung Passepartout-App auf einem iPhone oder iPad
Für iPhone, iPad oder Mac unter iOS, iPadOS bzw. MacOS nutze ich mittlerweile nicht mehr die OpenVPN-App, sondern die Passepartout-App, die man ebenfalls im App Store findet. Diese bietet deutlich mehr Einstellmöglichkeiten.
So hat man hier die Möglichkeit, VPN dauerhaft aktiv zu halten (trotz Schlafmodus des Endgerätes) und zudem bestimmte WLANs und/oder das Mobilfunknetz als "vertrauenswürdige Netzwerke" zu definieren. Dies hat dann zur Folge, dass das VPN im heimischen Netzwerk oder im (normalerweise sicheren) Mobilfunknetz deaktiviert bleibt. Sobald man sich in ein "fremdes" WLAN einwählt, z.B. im Urlaub, am Flughafen, Bahnhof oder auf öffentlichen Plätzen, wird die Verbindung zum heimischen OpenVPN-Server aber automatisch aufgebaut und gehalten, ohne dass man das VPN manuell einschalten muss. Dies halte ich für sehr praktisch und komfortabel.
Die Passepartout-App ist grundsätzlich zunächst kostenlos herunterzuladen. Für die genannte Komfortfunktion "vertrauenswürdige Netzwerke" benötigt man aber zusätzlich einen In-App-Kauf zur Vollversion für einmalig 9,99 € (nur iOS/iPadOS oder MacOS) bzw. 17,99 € (iOS/iPadOS und MacOS) - Stand: April 2024. Für die genannte Funktion gut investiertes Geld, wie ich finde.
Eine vergleichbare App gibt es auch für Android, nämlich VPN Client Pro. Diese unterstützt unter anderem OpenVPN, welches in der kostenlosen Basisversion vollumfänglich funktioniert. Auch hier lässt sich die OpenVPN-Profildatei importieren. Die Automatisierung wie in Passepartout ist jedoch ebenfalls kostenpflichtig mittels In-App-Kauf, wobei man zwischen einer Life-Time-Lizenz für den OpenVPN Client und einem Abo-Modell wählen kann.
Die Einrichtung von Passepartout:
- Zunächst die App aus dem App Store herunterladen.
- Zur Nutzung als OpenVPN-Client benötigt man wieder die oben erstellte und auf die individuelle Umgebung angepasste OpenVPN-Profildatei. Am einfachsten bekommt man diese in Passepartout importiert, indem man die Datei mit dem PC oder dem Mac in der iCloud Drive ablegt und die Datei anschließend mit der Dateien-App des iPhones bzw. iPads öffnet und dann die "Teilen"-Funktion nutzt. Dort dann einfach die Passeportout-App auswählen. Alternativ kann man sich die Datei auch per E-Mail zusenden und in der E-Mail-App mit der "Teilen"-Funktion in Passepartout öffnen (weniger sicher).
- Sodann öffnet sich die Passepartout-App automatisch und man wird aufgefordert, einen Titel für das VPN einzugeben, z.B. OpenVPN.
- Nach Druck auf "Weiter" gibt man seinen Benutzernamen und das Passwort des OpenVPN-Servers ein (also in meinem Beispiel von der Synology-Diskstation, siehe oben).
- Nach Druck auf "Fertig" ist das Profil in Passepartout einsatzbereit.
- Im Menü von Passepartout können nun noch ein paar Einstellungen vorgenommen werden (siehe auch unten Bilder 26 und 27). Wenn man in der Profildatei noch keine DNS-Einstellungen vorgenommen hat, sollte man unter "Netzwerk-Einstellungen" die Einstellung "DNS" auf "Manuell" umschalten. Weiter unten unter "DNS" ggf. die Google-DNS-Adresse 8.8.8.8 eintragen, da man je nach Endgerät ansonsten keinen Internetzugriff über die VPN-Verbindung hat (siehe oben). Möchte man auch eine IPv6-Adresse im VPN haben (siehe hierzu schon oben unter 1.), kann man die Einstellung "Standard-Gateway" ebenfalls auf "Manuell" umstellen und neben dem Schieberegler für IPv4 auch den für IPv6 aktivieren. Dann geht man mit "zurück" wieder in das Hauptmenü des OpenVPN-Profils. Dort ggf. den Schieberegler "Verbindung aktiv halten trotz Schlafmodus" einschalten, wenn dies gewünscht ist (hat ggf. negativen Einfluss auf die Akkulaufzeit). Unter "Vertrauenswürdige Netzwerke" kann der Schieberegler bei "Mobilfunknetz" aktiviert werden, unter "WLAN hinzufügen" kann man das oder die eigene(n) WLAN-Netzwerk(e) eintragen, unter denen man keine VPN-Verbindung haben möchte. Wichtig: Sofern man die Vollversion von Passepartout noch nicht gekauft hat, wird man hier dann aufgefordert, diese zu kaufen. Erst nach dem In-App-Kauf kann man diese Funktion nutzen. Zu guter letzt unter VPN den Schieberegler "Aktiviert" (ganz oben) einschalten. Das bewirkt, dass das VPN von nun an "selbständig" eingeschaltet wird, wenn man sich in einem fremden WLAN aufhält. Zur Kontrolle der Funktion kann man das Mobilfunknetz bei den vertrauenswürdigen Netzwerken deaktivieren und das WLAN des iPhones kurzzeitig abschalten, so dass man über Mobilfunk mit dem Internet verbunden ist. Nach ein paar Sekunden sollte sich die VPN-Verbindung automatisch aufbauen. Bei der ersten Verwendung wird man von iOS gefragt, ob man das Hinzufügen von VPN-Konfigurationen durch Passepartout erlaubt, was man dann macht. Fertig!
Bild 26:
Bild 27:
Zu 6.: FRITZ!App Fon zum Telefonieren von unterwegs im VPN über die FritzBox
Mit der FRITZ!App Fon kann man auch mit seinem Smartphone Telefonate über die FritzBox, also den Glasfaseranschluss, führen. Das schöne dabei ist, dass dies sogar von unterwegs funktioniert, wenn man über VPN mit dem Heimnetzwerk verbunden ist. Dann funktionieren zumindest abgehende Anrufe mit der App problemlos. Seit der Version 5.0 der FRITZ!App Fon sind über iOS allerdings ankommende Anrufe, wenn man sich nicht in einem WLAN-Netzwerk befindet und die App nicht permanent offen hält, nicht mehr möglich, selbst wenn man über VPN verbunden ist. Dies hängt laut AVM mit neuen Vorgaben von Apple zusammen.
Wenn eine Verbindung mit OpenVPN zum Heimnetzwerk eingerichtet ist (siehe oben 1. bis 5.) und man von unterwegs über die FritzBox telefonieren möchte, ist Folgendes zu tun:
- Zunächst aus dem jeweiligen App-Store (iOS, Android) die FRITZ!App Fon auf dem Mobiltelefon herunterladen.
- Als nächstes muss das Smartphone als "LAN/WLAN (IP-Telefon)" in der FritzBox angelegt werden. Die Einrichtung eines IP-Telefons in der FritzBox wird im Kapitel "Telefonie einrichten" näher beschrieben.
- Wichtig: Damit man sein Gegenüber beim Telefonieren mit der FRITZ!App Fon bei einer Verbindung über OpenVPN auch hören kann und man selbst gehört wird, muss in der FritzBox-Konfiguration noch eine weitere Einstellung vorgenommen werden unter "Heimnetz" > "Netzwerk" > "Netzwerkeinstellungen" > "weitere Einstellungen" > "Statische Routingtabelle" > "IPv4 Routen" > "Neue IPv4 Route". Dort sind folgende Einstellungen vorzunehmen (siehe nachfolgendes Bild 28):
- IPv4-Netzwerk: 10.0.0.0
- Subnetzmaske: 255.0.0.0
- Gateway: die lokale IPv4-Adresse des Netzwerkgeräts, auf dem der VPN-Server läuft (in meinem Beispiel also die Synology-Diskstation, z.B. 192.168.178.10).
Anschließend ist ein Haken zu setzen bei "IPv4-Route aktiv", danach auf "OK" drücken. - Sind diese Vorarbeiten erledigt, kann die FRITZ!App Fon geöffnet werden. Dabei wird zunächst nach der FritzBox gefragt, mit der man verbunden werden will. Nachdem man diese ausgewählt hat, kann man bereits über die App telefonieren.
Bild 28:
Ihnen hat der Artikel geholfen und Sie möchten sich bedanken? Dann bitte hier entlang.