Wireguard Unterstützung mit der Fritz!Box - die Theorie
Die Fritz!Box Produkte von AVM sind dafür bekannt über Jahre mit neuer Firmware versorgt zu werden. Dabei werden nicht nur Fehler behoben sondern auch neue Funktionen integriert. Eine dieser neuen Funktionen, welche mit der markanten Version 7.50 verfügbar gemacht wurden, ist „Wireguard”.
Dieser Artikel widmet sich diesen Fragen. Die Antworten sind dabei theoretischer Natur. Einen Artikel welcher die praktische Einrichtung von Wireguard beschreibt gibt es auch (Quelle 1). Folgen Sie einfach diesem Link.
Was ist Wireguard und wofür ist Wireguard gut?
Die knappe Antwort auf das „Was” ist, Wireguard realisiert ein VPN (Virtual-Private-Network).
Bevor der Fokus jetzt mehr auf Wireguard an sich gelegt wird, soll vorher kurz im allgemeinen erläutert werden was ein VPN ist. Damit erschließt sich auch das „Wofür”. Die Erläuterung geschieht anhand zweier typischer Anwendungsfälle für den Heimgebrauch.
-
Sie verbinden Ihr Heimnetzwerk oder einen einzelnen Rechner zu Hause über ein VPN mit einem entfernten VPN-Server. Damit verlegen Sie aus Sicht des Internets Ihren Standort und können damit z.B. Angebote in Anspruch nehmen, welche es nur in einem anderen Land gibt. Des weiteren ist diese Netzwerkverbindung kryptographisch verschlüsselt. Durch die Verschlüsselung fällt es einem potentiellen Lauscher extremst schwer Rückschlüsse auf die eigentlich übertragenen Daten zu ziehen. Nur dem Sender (z.B. Ihr Notebook) und dem Empfänger (der VPN Server) liegen die übertragenen Daten unverschlüsselt vor.
-
Sie sind unterwegs und verbinden sich per VPN mit Ihrem Heimnetzwerk. Damit können Sie sich mit einem Smartphone oder einem Notebook so zu Ihrem Heimnetzwerk verbinden als wären Sie zu Hause. So können Sie z.B. auf die Daten Ihres Netzwerkspeichers zugreifen, Ihr Smart-Home steuern oder einen Blick auf die Aufnahme Ihrer IP-Kamera werfen.
Auch die Kombination aus beiden Anwendungsfällen ist möglich. Sie etablieren eine sichere Verbindung von Ihrem Notebook, über z.B. einen unsicheren öffentlichen WLAN-Hotspot und das Internet, zu Ihrem heimischen VPN-Server. Danach surfen Sie aus Sicht des Internets so als ob Sie zu Hause wären. Die folgende Grafik visualisiert diesen Ansatz.
Wie Eingangs geschrieben können Sie per Wireguard solch eine VPN-Verbindung realisieren.
Vielen ist VPN schon ein Begriff und wissen das es seit Jahrzehnten VPNs und entsprechende Lösungen gibt. Die erste stabile Version von Wireguard wurde hingegen erst im Jahr 2020 veröffentlicht (Quelle 2). Damit kommt die Frage nach dem „Warum” auf. Warum wurde Wireguard entwickelt, wenn es doch funktionierende Lösungen gibt?
Die funktionierenden Lösungen weisen das Problem auf, dass sie kompliziert sind. So gibt es viele Optionen wie man z.B. eine VPN-Verbindung per IPsec etablieren kann. All diese Optionen und Möglichkeiten bedeuten viel Software-Code. Viel Software-Code bedeutet wiederum Potential für Fehler und Sicherheitslücken, dazu eine verhältnismäßig langsame Ausführung.
Wireguard ist hingegen eine vor konfektionierte Lösung aus vor selektierten aktuellen Protokollen, mit wenig Möglichkeiten für Konfigurationen. Der Software-Code ist vom Umfang sehr übersichtlich, was der Stabilität und Leistung zu Gute kommt. Last but not least, ist der Softwarecode „Open-Source”, sprich öffentlich einsehbar. Gepaart mit dem überschaubaren Umfang, bedeutet dass, Stabilität und Sicherheit da Fehler eher entdeckt werden.
Notiz: Vieles fängt klein an, ist schlank und leistungsfähig. Doch mit der Zeit veralten Protokolle, müssen ersetzt werden. Neuen Anforderungen muss genüge getan werden. Kompromisse werden eingegangen. Der Software-Code wächst, Optionen und Einstellmöglichkeiten tauchen auf. Man darf gespannt sein, ob Wireguard nicht in zehn oder zwanzig Jahren als kompliziert, als behäbig gilt und von etwas kleinem, schlankem, leistungsfähigerem abgelöst wird.
Wie können Sie Wireguard benutzen?
Um eine Wireguard-Verbindung zu etablieren, benötigen Sie einen Wireguard-Server und einen oder mehrere Wireguard-Clients. „Einen oder mehrere”, da Sie einen Wireguard-Client pro Gerät benötigen mit welchem Sie sich zu Ihrem Wireguard-Server verbinden möchten.
Für die Bereitstellung eines Wireguard-Servers haben Sie diverse Optionen. So der Anlass für diesen Artikel, die Integration eines Wireguard-Servers in der Fritz!Box. Außerdem bieten viele externe VPN-Dienstleister die Möglichkeit Wireguard als Verbindungslösung zu wählen. Wer ein wenig IT-affin ist, kann auch zu Hause einen Raspberry-PI, ein NAS oder extern einen generischen virtuellen Server (vServer) anmieten und als Wireguard-Server einrichten.
Wireguard-Clients sind für alle gängigen Betriebssystem erhältlich. Sie müssen diese allerdings erst herunterladen und installieren. Eine Quelle für alle Betriebssysteme ist die Webseite der Wireguard-Entwickler selbst (Quelle 3). Dort finden sich alle notwendigen Informationen.
Startpunkt der Verschlüsselung einer Wireguard-Verbindung ist ein asymmetrisches Schlüsselsystem. Das bedeutet der Server und jeder Client besitzen jeweils zwei unterschiedliche Schlüssel. Einen öffentlichen Schlüssel und einen privaten Schlüssel. Der private Schlüssel sollte immer geheim sein und nur dem Server oder Client bekannt sein zu dem dieser Schlüssel gehört. Der öffentliche Schlüssel muss anderen Geräten bekannt gegeben werden, damit diese sich zu dem Zielgerät mit dem dazu passenden privaten Schlüssel verbinden können.
Dieser Mechanismus wird hier explizit erwähnt, da Sie den öffentlichen Schlüssel des jeweiligen Ziels auf dem Client bzw. auf dem Server konfigurieren müssen. Ein Beispiel, Sie wollen sich mit Ihrem Smartphone zu Ihrer Fritz!Box per Wireguard verbinden. Dann müssen Sie vorher der Fritz!Box den öffentlichen Schlüssel des Smartphones mitteilen und dem Smartphone den öffentlichen Schlüssel der Fritz!Box.
Um eine Verbindungsanfrage zu einem Wireguard-Server stellen zu können, benötigt ein Wireguard-Client noch Kenntnis über die Adresse des Wireguard-Server. Technisch bedeutet das, die Konfiguration einer IP-Adresse oder einer URL (textuelle Adresse). Des Weiteren müssen Sie, umgangssprachlich, noch die exakte Wohnung mitteilen unter welcher der Zugang für die Verbindung an der Zieladresse zu finden ist. Im technischen Jargon ist das die sogenannte Portnummer.
Textuelle Adressen, sogenannte URLs, werden über ein System namens DNS (Domain-Name-System) in numerische Adressen übersetzt. Jedes Gerät, welches mit dem Internet verbunden ist, ist auch mit einem DNS-Server verbunden, der für Sie im Hintergrund diese Aufgabe durchführt. Um sicherzustellen das ein Wireguard-Client auch die DNS-Anfragen über die verschlüsselte sichere Verbindung sendet, sollte noch ein DNS-Server konfiguriert werden. Leistungsfähige kostenfreie Server finden sich unter den Adressen 1.1.1.1 (CloudFlare) oder 8.8.8.8 (Google). Wer sich um seine Daten sorgt, findet auch entsprechende öffentliche DNS-Server z.B. von Digital-Courage (5.9.164.112) oder DNS.Watch (84.200.69.80).
Ferner haben Sie noch die Möglichkeit einzustellen, welche Daten über die Wireguard-Verbindung geleitet werden sollen. Der Vereinfachung halber sollten alle Daten darüber geleitet werden. Wer aber nur bestimmte Daten über Wireguard senden möchte oder bestimmte Ziele über Wireguard erreichen möchte, der hat entsprechende Möglichkeiten das zu konfigurieren.
Vielleicht ist der ein oder andere jetzt erschrocken, denn der Artikel begann ja damit das Wireguard einfach und unkompliziert einzurichten und zu betreiben sei. Doch Sie werden per Assistent durch die Einrichtung des Wireguard-Servers auf einer Fritz!Box geleitet. Dazu werden die Konfigurationsdaten für die Wireguard-Clients per Datei und QR-Code zur Verfügung gestellt. Schauen Sie doch mal in den Artikel zur Einrichtung von Wireguard mit einer Fritz!Box. Der Artikel leitet Sie detailliert durch alles was zur Einrichtung von Wireguard mit einer Fritz!Box nötig ist. Es ist, so meine Meinung, tatsächlich relativ einfach. Zum anderen kann man sich auch die Konfiguration von anderweitigen VPNs in das Gedächtnis rufen. Einfacher war diese sicherlich nicht.
ich wünsche noch einen entspannten Sommer,
Matthias (01.08.2022)
- 11.05.2023: Artikel aktualisiert da Fritz!OS 7.50 inzwischen erschienen ist.
Quellen:
[1] https://dasheimnetzwerk.de/12-2022/Fritz!Box-Wireguard-einrichten.html
[2] https://en.wikipedia.org/wiki/WireGuard
[3] https://www.wireguard.com/install/