VPN mit Wireguard einrichten - So geht's (2024)

Der Grundgedanke hinter einem „Virtual Private Network“ besteht darin, eine sichere Verbindung zwischen zwei verschiedenen Netzen herzustellen. Dabei wird die Infrastruktur einer potenziell feindlichen Umgebung verwendet. Da die Signale zwischen beiden Netzen verschlüsselt werden, läuft die Kommunikation sicher in einer Art Tunnel ab. Deswegen werden VPN-Verbindungen oft als „Tunnel“ bezeichnet. Via VPN können sich die Mitarbeitenden mit dem Unternehmensnetzwerk verbinden, genauso, als säßen sie am Schreibtisch im Büro. Das weltweite Internet schrumpft somit auf die Funktion eines ziemlich langen LAN-Kabels. Wenn Sie über diese VPN-Verbindung mit Ihrem Browser einen Server aufrufen, nutzen Sie die IP-Adresse des VPN-Netzwerks, also nicht die vom DSL- oder Kabelprovider zugewiesene Adresse. Genau damit werben kommerzielle Anbieter.

Was leistet ein VPN?

Ziemlich marktschreierisch, wie es sich für Werbung gehört, bieten im abendlichen TV-Programm eine Reihe von Unternehmen die Nutzung ihrer VPN-Verbindungen an: Nur damit könne man heute sicher und anonym im Internet surfen. Wie bei Werbung üblich, ist das nicht völlig falsch, hat aber einen Haken. Kommerzielle VPN-Anbieter können die Grundlagen des Internets nicht aushebeln. Damit Datenpakete zwischen zwei Punkten ausgetauscht werden können, benötigt ein Client eine IP-Adresse. Sie bekommen also auch bei Nutzung des Angebots eine IP-Adresse zugewiesen. Nur ist die nicht mit der tatsächlichen IP-Adresse Ihres Anschlusses identisch. Insofern surfen Sie „anonym“. Dazu gleich noch einmal mehr. Erst einmal zum Nutzen eines VPN selbst.

Sie benötigen Server und Client: Um ein VPN einzusetzen, benötigen Sie einen VPN-Server. Der kümmert sich um den Verbindungsaufbau und sichert im Hintergrund den Datenverkehr. Und Sie müssen auf dem Client, also Ihrem Computer, Tablet oder Smartphone, eine VPN-Verbindung einrichten, die dann die Daten des Servers nutzt.

Was kann das eigene VPN und was kann es nicht? Für Firmen ist die Nutzung eines VPN schon allein deshalb interessant, weil über die Verbindung zum Computer auch Informationen rauschen, die besser vertraulich bleiben. Aber auch für Privatanwender gibt es gute Gründe: Wenn Sie unterwegs ein fremdes WLAN nutzen, können Sie nicht sicher sein, dass dieses nicht kompromittiert wurde und Informationen mitgeschnitten werden, zum Beispiel Kreditkarteninformationen. Mit einem VPN bleiben diese Informationen verschlüsselt und uneinsehbar. Ein gewichtiges Argument der kommerziellen Anbieter liegt aber nicht in der Vertraulichkeit der Verbindungen, sondern in der Umgehung des Geoblockings: Einfach die Software des Anbieters nutzen, eine IP-Adresse des gewünschten Landes auswählen und schon können Sie sich auch Videos oder Sportübertragungen ansehen, die aus Deutschland nicht abrufbar sind. Oder umgekehrt, wenn Sie sich gerade im Ausland befinden.

Anonym sind Sie damit indes nicht, denn die Adressräume wurden von den Anbietern reserviert. Wenn Sie auf Anonymität angewiesen sind, müssen Sie darauf vertrauen, dass der Anbieter Ihre tatsächliche IP-Adresse und Ihre Daten für sich behält. Einen Anbieter, mit dem wir gute Erfahrungen gemacht haben, nennen wir am Ende des Artikels. Um wirklich anonym zu bleiben, müssten Sie sich aber eher mit einer Lösung wie dem TOR-Browser anfreunden. Wenn es aber in erster Linie darum geht, sichere Verbindungen in einer fremden Netzumgebung aufzubauen, ist ein VPN perfekt. Wie Sie dies erreichen, zeigen wir anhand von Beispielen mit sehr unterschiedlichem technischen Aufwand.

Siehe auch: Warum Sie unbedingt einen VPN-Dienst nutzen sollten

Der schnelle Weg zum VPN: Die Fritzbox

VPN mit Wireguard einrichten - So geht's (1)

Ein einfacher Weg zum VPN besteht darin, die eigene Fritzbox als VPN-Server zu nutzen. Befinden Sie sich also im fremden WLAN eines Cafés oder Hotels, stellen Sie eine Verbindung mit Ihrer heimischen Fritzbox her. Rufen Sie anschließend eine Internet-URL auf, wird diese von Ihrer Fritzbox ausgeliefert. Das funktioniert problemlos, wenn Ihr Anschluss via IPv4 erreicht werden kann. Die Nutzer eines Kabelanschlusses benötigen einen regulären Dual-Stack. Zeigt die Fritzbox, dass sie DS-Lite verwendet, kommt diese VPN-Methode nicht infrage.

Die Einrichtung des VPN-Zugangs verläuft bei allen anderen Anschlüssen so: Als Basis dient der von AVM angebotene Cloud-Dienst „MyFritz!“. Melden Sie sich an Ihrer Fritzbox an und gehen Sie auf „Internet –› MyFritz!-Konto“. Sofern Sie noch kein solches Konto besitzen, geben Sie eine gültige E-Mail-Adresse ein und folgen den Schritten für die Registrierung. Im Verlauf müssen Sie die E-Mail-Adresse bestätigen, werden auf die AVM-Seite weitergeleitet und legen ein (starkes!) Passwort an.

Sobald Sie ein solches Konto besitzen, zeigt Ihnen der Besuch des Menüs, dass die Fritzbox mit dem Dienst verbunden ist, ferner auch die öffentliche Internetadresse der Fritzbox. Unter dem Feld mit der URL befindet sich der Schalter für die Einrichtung eines Nutzers, der auf die Fritzbox extern zugreifen darf. Klicken Sie auf „Fritz- Box-Benutzer einrichten“. Nun vergeben Sie einen Benutzernamen und ein Passwort. Nach „Übernehmen“ muss die Eingabe mit einer Tastenkombination eines angeschlossenen Telefons bestätigt werden oder mit der Fritz-Taste auf dem Router. Um jetzt den Zugang zu testen, benötigen Sie eine externe Verbindung etwa über das Smartphone mit mobilen Daten und bei ausgeschaltetem WLAN. Sie nutzen dabei die erwähnte URL und verwenden den Benutzernamen und das Passwort des gerade angelegten Benutzers. Jetzt wechseln Sie über „System –› Fritzbox-Benutzer“ und klicken auf das Stiftsymbol neben dem Benutzer. Hier aktivieren Sie dann die Option „VPN“. Nach „Übernehmen“ ist der Zugang realisiert.

Im nachfolgenden Dialog sehen Sie eine Zusammenfassung der Zugangsdaten. Drucken Sie sich diese am besten aus. Mit diesen Informationen können Sie jetzt auf anderen Geräten eine VPN-Verbindung herstellen (siehe Kasten „VPN-Zugang nutzen“).

Wireguard: Eigener VPN-Server unter Ubuntu

Mehr Möglichkeiten haben Sie, wenn Sie einen eigenen VPN-Server einrichten. Mit Wireguard gibt es eine relativ einfach zu installierende Lösung. Um Wireguard benutzen zu können, benötigen Sie einen Rechner, auf dem Linux läuft und der über das Internet zu erreichen ist. Das darf auch eine virtuelle Maschine im Internet sein. Das ist vor allem dann eine gute Lösung, wenn Sie den VPN-Zugang nur verwenden wollen, wenn Sie unterwegs sind.

Daheim starten Sie einfach die Instanz beim Hoster und nach Ihrer Rückkehr wird sie wieder beendet. Zur Installation von Wireguard genügt bei vielen Distributionen ein Befehl:

sudo apt install wireguard

Nutzen Sie eine LTS-Version von Ubuntu, wie das bei virtuellen Maschinen oft der Fall ist, werden Sie die Paketquellen erst ergänzen müssen. Dies folgt dem bekannten Muster:

sudo add-apt-repository ppa:wireguard/wireguardsudo apt updatesudo apt install wireguard

Im nächsten Schritt sorgen Sie dafür, dass alle Pakete, die an der Wireguard-Schnittstelle ankommen, weitergeleitet werden. Dazu öffnen Sie die Datei „/etc/sysctl.conf“. Hier tragen Sie zwei Zeilen ein:

net.ipv4.ip_forward=1net.ipv6.conf.all.forwarding=1

Eventuell sind die Zeilen vorhanden und es genügt, das Kommentarzeichen „#“ zu entfernen. Speichern Sie die Datei und aktualisieren Sie die Konfiguration mit diesem Befehl:

sysctl -p

Die Kommunikation bei Wireguard wird mittels öffentlicher und privater Schlüssel auf dem Server und dem Client abgesichert. Deswegen muss das Schlüsselpaar zunächst auf dem Server angelegt werden. Das geht – mit root-Recht – so:

cd /etc/wireguardumask 077wg genkey | sudo tee privatekey | wg pubkey | sudo tee pubkey

Anschließend liegen im Verzeichnis „/etc/ wireguard“ zwei Dateien, die unschwer als privater und öffentlicher Schlüssel zu erkennen sind. Jetzt kommt die einzige Hürde. Wireguard arbeitet als Router in seinem VPN-Netz. In der Konfiguration müssen Sie daher eine virtuelle Netzwerkschnittstelle schaffen, die hier mit „wg0“ bezeichnet werden soll. Der Router muss einen Adressraum verwalten, der sich mit den IP-Adressen Ihres eigentlichen Netzwerks nicht in die Quere kommt. Mit einem Editor legen Sie die Datei „/etc/wireguard/wg0.conf“ an und tragen dort folgende Zeilen ein:

[Interface]PrivateKey = [privaten Key hier eintragen]Address = 192.168.207.1/24, fd0d:86fa:c3bc::1/64ListenPort = 51820SaveConfig = true

Ein Wort zu den Adressen. Der erste Wert definiert den IPv4-Bereich 192.168.207.1 bis 192.168.207.254, der im Netzwerk des Autors nicht verwendet wird. Wenn Sie IPv6-Adressen nutzen wollen, ist die Schaffung einer sogenannten „Unique Local Address“ nicht so einfach, weil es nahezu unendliche Möglichkeiten gibt. Unter https://simpledns.plus/private-ipv6 können Sie sich einen zufällig generierten Adressraum erstellen lassen. Das erleichtert die Sache. Speichern Sie die Datei.

Jetzt geht es an das Forwarding der Pakete. Dazu finden Sie zunächst die Netzwerkschnittstelle des Servers heraus, die öffentlich erreichbar ist. Führen Sie in einem Terminal das Kommando

ip route list default

aus. Bei den ausgegebenen Strings suchen Sie nach dem Eintrag mit dem Zusatz „dev“. Dahinter steht dann der Name der Schnittstelle, etwa „eth0“. Jetzt öffnen Sie erneut die Datei „/etc/wireguard/wg0. conf“ und fügen am Ende der Datei diesen Codeblock ein.

PostUp = ufw route allow in on wg0 out on eth0PostUp = iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADEPostUp = ip6tables -t nat -I POSTROUTING -o eth0 -j MASQUERADEPreDown = ufw route delete allow in on wg0 out on eth0PreDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADEPreDown = ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

VPN mit Wireguard einrichten - So geht's (2)

Nach dem Speichern der Datei müssen Sie noch der Firewall gestatten, Datenverkehr zum Port von Wireguard durchzulassen:

sudo ufw allow 51820/udpsudo ufw allow OpenSSH

Mit root-Recht stoppen Sie einmal die Firewall (sudo ufw disable) und starten Sie erneut (sudo ufw enable), damit die Änderungen aktiv werden. Wenn Wireguard beim Start des Systems aktiviert werden soll, konfigurieren Sie noch den Dienst:

sudo systemctl enable wg-quick@wg0.servicesudo systemctl start wg-quick@wg0.service

Dies gilt für alle Ubuntu & Co. mit Systemd.

Wireguard: Clientgeräte einrichten

Für mobile Clients mit Android und iOS gibt es in den App Stores die passende Software zur Einrichtung. Soll ein Linux-Client eingerichtet werden, installieren Sie darauf Wireguard. Anschließend müssen Sie dort – wie gezeigt – ein Schlüsselpaar erzeugen.

Mit einem Editor wie Nano

sudo nano /etc/wireguard/wg0-client.conf

legen Sie auf dem Client eine eigene Konfigurationsdatei an. Bei der Wahl des Namens sind Sie völlig frei, die Ähnlichkeit mit der Serverdatei ist hier beabsichtigt, um die Unterschiede deutlich zu machen. Die Datei erhält zunächst einmal folgenden Inhalt:

[Interface]PrivateKey = [privaten Key hier eintragen]# Wir zählen einfach die IP-Adresse um "1" hochAddress = 192.168.207.2/24Address = fd0d:86fa:c3bc::2/64 [Peer]PublicKey = [öffentlicher Key des Servers]AllowedIPs = 192.168.207.1/24Endpoint = [Server-IP oder Domain- Name]:51820

Das ist die grundlegende Konfiguration. Wenn Sie vorhaben, jeglichen IP-Verkehr durch den Tunnel zu schicken, müssen noch ein paar Ergänzungen vorgenommen werden. Diese lesen Sie am besten in der offiziellen Dokumentation des Projekts nach. Sie müssen dem Server anschließend noch mitteilen, dass sich der Client verbinden darf. Das geht mit einem einfachen Kommando im Terminal:

wg set wg0 peer [öffentlicher Schlüssel des Clients] allowed-ips 192.168.207.2/24

Läuft der Server, starten Sie eine Verbindung auf dem Client im Terminal:

sudo wg-quick up wg0

Damit sollte die Verbindung stehen.

VPN mit Raspberry Pi und Open VPN

VPN mit Wireguard einrichten - So geht's (3)

Eine Alternative zu Wireguard ist Open VPN. Damit und mit einem Raspberry Pi können Sie einen VPN-Server verblüffend einfach umsetzen. Möglich macht dies das Projekt Pi VPN .Ursprünglich ausschließlich für Open-VPN-Verbindung gestartet, kann es heute auch das Wireguard-Protokoll verwenden. Die Installation und Einrichtung sind inzwischen auch nicht mehr ausschließlich auf den Raspberry beschränkt.

Mit dem Kommando

curl -L https://install.pivpn.io | bash

starten Sie die Einrichtung und Konfiguration, die problemlos bei IPv4-Adressen funktioniert. Hier gelten also die gleichen Einschränkungen am Kabelanschluss, wie sie bereits erwähnt wurden.

Das Programm begleitet Sie durch alle Schritte inklusive der optionalen Auswahl eines alternativen DNS-Servers. Auch auf die Portweiterleitung am Router werden Sie hingewiesen. Hier kann tatsächlich nichts schiefgehen. Einmal abgeschlossen, legen Sie mittels

pivpn add

einen Client an, der dann auch die Zugangsdatei erzeugt.

Kommerzieller Anbieter: Proton VPN

Kommerzielle Angebote reduzieren den technischen Aufwand auf ein Minimum. Ob der VPN-Anbieter allerdings Ihre Daten speichert oder ob Sie tatsächlich anonym surfen, ist eine Frage des Vertrauens. Einen untadeligen Ruf genießt das Schweizer Unternehmen Proton, das auch einen kostenfreien VPN-Zugang anbietet. Dieser finanziert sich aus den Gebühren der Nutzer, die sich für das kostenpflichtige Abo entschieden haben, das mehr Geschwindigkeit und mehr Konfigurationsoptionen bietet (für fünf bis zehn Euro pro Monat). Die Einrichtung unter Ubuntu ist extrem einfach. Sie holen sich von der Website https://proton vpn.com das Installationspaket und installieren es per Doppelklick.

Damit werden zunächst nur die Paketquellen hinzugefügt. Nach dem Update der Quellen installieren Sie mit

sudo apt updatesudo apt install protonvpn

die Software.

Das war dann auch schon alles: Programm starten, die Zugangsdaten zum Proton-Account eintragen – das genügt und Sie können die gewünschte geografische Verbindung auswählen und nutzen.

VPN mit Wireguard einrichten - So geht's (2024)
Top Articles
Latest Posts
Article information

Author: Kieth Sipes

Last Updated:

Views: 6337

Rating: 4.7 / 5 (47 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Kieth Sipes

Birthday: 2001-04-14

Address: Suite 492 62479 Champlin Loop, South Catrice, MS 57271

Phone: +9663362133320

Job: District Sales Analyst

Hobby: Digital arts, Dance, Ghost hunting, Worldbuilding, Kayaking, Table tennis, 3D printing

Introduction: My name is Kieth Sipes, I am a zany, rich, courageous, powerful, faithful, jolly, excited person who loves writing and wants to share my knowledge and understanding with you.