So richten Sie Wireguard VPN unter Linux ein

Wireguard ist ein leistungsstarker Open-Source-Daemon für virtuelle private Netzwerke (VPN), der sowohl auf Desktop- als auch auf Mobilgeräten ausgeführt werden kann. Er bietet eine schnelle und einfache Alternative zu herkömmlichen VPN-Lösungen wie IPsec und OpenVPN. Hier zeigen wir Ihnen, wie Sie Wireguard installieren und ein einfaches VPN-Setup mit drei Linux-Rechnern erstellen.

Warum Wireguard als VPN-Lösung verwenden?

Einer der größten Verkaufsargumente von Wireguard ist, dass es ein schneller und leichter VPN-Daemon ist. Im Gegensatz zu herkömmlichen Lösungen verursacht Wireguard keinen großen Overhead für Ihr Netzwerk. Dies führt zu geringerer Latenz und einer hohen Gesamtdurchsatzrate über Ihre Knoten.

Ein weiteres wichtiges Merkmal von Wireguard ist, dass es sich um ein Modul innerhalb des Linux-Kernels handelt. Dadurch kann es ausgeführt werden, ohne zusätzliche Systemressourcen Ihres Computers zu beanspruchen, was es zur idealen Wahl für den Einsatz auf Low-End- und SOC-Geräten macht.

Schließlich nutzt Wireguard auch moderne kryptografische Standards und Entwicklungspraktiken. Es gab auch mehrere formale Überprüfungen, die die Korrektheit des Codes, die Sicherheitsgarantien und die Widerstandsfähigkeit von Wireguard gegen Angriffe bestätigen.

Eine Randbemerkung: immer noch nicht von Wireguard überzeugt? Erfahren Sie, wie Wireguard im Vergleich zu OpenVPN abschneidet.

Wireguard erhalten

Der erste Schritt zum Einrichten von Wireguard unter Linux besteht darin, die Kerntools aus dem Repository Ihrer Distribution herunterzuladen. Auf diese Weise können Sie das integrierte Wireguard-Kernelmodul mithilfe von Userspace-Befehlen steuern.

[enlazatom_show_links]

Um die Kerntools in Ubuntu und Debian zu installieren, führen Sie den folgenden Befehl aus:

sudo apt installiere Wireguard Wireguard-Tools

In Fedora können Sie den dnf-Paketmanager verwenden:

sudo dnf installiere Wireguard-Tools

Für Arch Linux können Sie Pacman ausführen, um die Wireguard-Kerntools zu erhalten:

sudo pacman -S Wireguard-Tools

Bestätigen Sie, dass Sie die Wireguard-Tools ordnungsgemäß installiert haben, indem Sie den Hilfebildschirm laden:

Einrichten des Wireguard-Servers

Annahme: In diesem Artikel wird davon ausgegangen, dass Sie den Wireguard-Server auf einem Linux-System mit einer öffentlich zugänglichen IPv4-Adresse installieren. Die Anweisungen funktionieren auch auf einem Server hinter einem NAT, aber er findet keine Knoten außerhalb seines Subnetzes.

Mit dem Wireguard Core-Toolkit auf Ihren Linux-Rechnern können Sie jetzt den Serverknoten Ihres VPN einrichten. Dieser dient als Internet-Gateway für Ihre Clientknoten im Netzwerk.

Navigieren Sie zunächst zu Ihrem Wireguard-Konfigurationsverzeichnis und legen Sie die Standardberechtigungen auf „Nur Root“ fest:

cd /etc/wireguard sudo umask 077

Notiz: Einige Systeme verhindern möglicherweise, dass Sie als normaler Benutzer in den Ordner „/etc/wireguard“ gelangen. Um dies zu beheben, wechseln Sie mit sudo -s zum Root-Benutzer.

Generieren Sie den öffentlichen und privaten Schlüssel für Ihren Wireguard-Server:

sudo sh -c 'wg genkey | tee /etc/wireguard/server-private-key | wg pubkey > /etc/wireguard/server-public-key'

Erstellen Sie die Konfigurationsdatei Ihres Servers mit Ihrem bevorzugten Texteditor:

sudo nano /etc/wireguard/wg0.conf

Fügen Sie den folgenden Codeblock in Ihre Serverkonfigurationsdatei ein:

[Interface]

PrivateKey = FÜGEN SIE HIER IHREN PRIVATEN SERVER-SCHLÜSSEL EIN Adresse = 10.0.0.1/32 ListenPort = 60101 PostUp = iptables -t nat -I POSTROUTING -o NETZWERK-SCHNITTSTELLE-HIER -j MASKERADE PostDown = iptables -t nat -D POSTROUTING -o NETZWERK-SCHNITTSTELLE-HIER -j MASKERADE

Öffnen Sie eine neue Terminalsitzung und drucken Sie dann den privaten Wireguard-Schlüssel Ihres Servers aus:

sudo cat /etc/wireguard/server-privater-schlüssel

Kopieren Sie den privaten Schlüssel Ihres Servers in Ihre Zwischenablage.

Ersetzen Sie den Wert der PrivateKey-Variable durch den Schlüssel in Ihrer Zwischenablage.

Suchen Sie mit dem Befehl „ip“ die Netzwerkschnittstelle mit Internetzugriff:

Setzen Sie den Wert des Flags -o sowohl für die Variablen PostUp als auch PostDown auf die Schnittstelle mit Internetzugang und speichern Sie dann Ihre Konfigurationsdatei.

Öffnen Sie die Datei „/etc/sysctl.conf“ des Servers mit Ihrem bevorzugten Texteditor:

sudo nano /etc/sysctl.conf

Scrollen Sie nach unten zu der Zeile, die net.ipv4.ip_forward=1 enthält, und entfernen Sie dann das Rautezeichen (#) davor.

Laden Sie Ihre neue Sysctl-Konfiguration neu, indem Sie Folgendes ausführen: sudo sysctl -p.

Zu Ihrer Information: Wireguard ist nicht die einzige VPN-Lösung, die Sie unter Linux ausführen können. Erfahren Sie, wie Sie mit OpenVPN Ihr eigenes VPN erstellen.

Einrichten und Verbinden des Wireguard-Clients

An diesem Punkt haben Sie nun einen ordnungsgemäß konfigurierten Wireguard-Server ohne Peers. Um ihn zu verwenden, müssen Sie Ihren ersten Wireguard-Client einrichten und verbinden.

Navigieren Sie zum Wireguard-Konfigurationsverzeichnis Ihres Clientsystems und legen Sie dessen Standardberechtigungen fest:

cd /etc/wireguard sudo umask 077

Generieren Sie das Wireguard-Schlüsselpaar Ihres Clients mit dem folgenden Befehl:

sudo sh -c 'wg genkey | tee /etc/wireguard/client1-private-key | wg pubkey > /etc/wireguard/client1-public-key'

Erstellen Sie die Wireguard-Konfigurationsdatei des Clients mit Ihrem bevorzugten Texteditor:

sudo nano /etc/wireguard/wg0.conf

Fügen Sie den folgenden Codeblock in Ihre Client-Konfigurationsdatei ein:

[Interface]

Privater Schlüssel = FÜGEN SIE IHREN PRIVATEN SCHLÜSSEL FÜR CLIENT1 HIER EIN Adresse = 10.0.0.2/32 ListenPort = 60101

[Peer]
PublicKey = FÜGEN SIE HIER IHREN ÖFFENTLICHEN SERVER-SCHLÜSSEL EIN AllowedIPs = 0.0.0.0/0 Endpoint = FÜGEN SIE HIER IHRE SERVER-IP-ADRESSE EIN:60101 PersistentKeepalive = 25

Ersetzen Sie die PrivateKey-Variable durch den privaten Schlüssel Ihres Clients.

Öffnen Sie die Terminalsitzung Ihres Wireguard-Servers und drucken Sie dann den öffentlichen Schlüssel aus:

sudo cat /etc/wireguard/server-öffentlicher-schlüssel

Legen Sie den Wert der Variable „PublicKey“ auf den öffentlichen Schlüssel Ihres Servers fest.

Ändern Sie die Endpunktvariable in die IP-Adresse Ihres Wireguard-Servers.

Speichern Sie Ihre Konfigurationsdatei und verwenden Sie dann den Befehl wg-quick, um den Wireguard-Client zu starten:

Notiz: Dieser Befehl deaktiviert die Netzwerkkonnektivität Ihres Clients, bis Sie Ihren Wireguard-Server starten. Um zu Ihrem ursprünglichen Netzwerk zurückzukehren, führen Sie sudo wg-quick down wg0 aus.

Verknüpfen des Wireguard-Servers mit dem Client

Gehen Sie zur Terminalsitzung Ihres Wireguard-Servers und öffnen Sie dann die Konfigurationsdatei:

sudo nano /etc/wireguard/wg0.conf

Fügen Sie den folgenden Codeblock nach dem [Interface] Abschnitt:

[Peer]

Öffentlicher Schlüssel = FÜGEN SIE IHREN ÖFFENTLICHEN SCHLÜSSEL FÜR CLIENT1 HIER EIN Erlaubte IPs = 10.0.0.2/32 PersistentKeepalive = 25

Legen Sie die Variable „PublicKey“ auf den öffentlichen Schlüssel Ihres Wireguard-Clients fest.

Notiz: Sie können den öffentlichen Schlüssel erhalten, indem Sie sudo cat /etc/wireguard/client1-public-key auf Ihrem Client-Computer ausführen.

Speichern Sie die Konfigurationsdatei und führen Sie dann den folgenden Befehl aus, um den Wireguard-Dienst auf Ihrem Server zu starten:

Einen zweiten Client zum Server hinzufügen

Ein wichtiges Merkmal jedes VPN-Dienstes ist, dass er mehrere Rechner aus verschiedenen Netzwerken miteinander verbinden kann. Das ist nützlich, wenn Sie Computer an verschiedenen Standorten haben oder einen privaten Spieleserver für Ihre Freunde hosten möchten.

Um dies in Wireguard zu tun, müssen Sie eine Konfigurationsdatei für eine neue VPN-Schnittstelle auf Ihrem Server erstellen. Der einfachste Weg, dies zu tun, besteht darin, Ihre aktuelle Serverkonfiguration zu kopieren und der Kopie einen neuen Namen zu geben:

sudo cp /etc/wireguard/wg0.conf /etc/wireguard/wg1.conf

Öffnen Sie Ihre neue Konfigurationsdatei mit Ihrem bevorzugten Texteditor:

sudo nano /etc/wireguard/wg1.conf

Setzen Sie die Variable ListenPort auf 60102. Dadurch werden Portkollisionen zwischen den VPN-Schnittstellen wg0 und wg1 verhindert.

Gehen Sie zum [Peer] und ändern Sie die Variable AllowedIPs von „10.0.0.2/32“ in „10.0.0.3/32“. Speichern Sie dann Ihre Konfigurationsdatei.

Konfigurieren des zweiten Wireguard-Clients

Melden Sie sich bei Ihrem zweiten Computer an und bereiten Sie dann Ihr Wireguard-Konfigurationsverzeichnis vor:

cd /etc/wireguard sudo umask 077

Generieren Sie mit dem folgenden Befehl ein neues Wireguard-Schlüsselpaar:

sudo sh -c 'wg genkey | tee /etc/wireguard/client2-private-key | wg pubkey > /etc/wireguard/client2-public-key'

Erstellen Sie mit Ihrem bevorzugten Texteditor eine neue Konfigurationsdatei:

sudo nano /etc/wireguard/wg0.conf

Fügen Sie den folgenden Codeblock in Ihre neue Konfigurationsdatei ein:

[Interface]

Privater Schlüssel = FÜGEN SIE IHREN PRIVATEN CLIENT2-SCHLÜSSEL HIER EIN Adresse = 10.0.0.3/32 ListenPort = 60102

[Peer]
PublicKey = FÜGEN SIE HIER IHREN ÖFFENTLICHEN SERVER-SCHLÜSSEL EIN AllowedIPs = 0.0.0.0/0 Endpoint = FÜGEN SIE HIER IHRE SERVER-IP-ADRESSE EIN:60102 PersistentKeepalive = 25

Legen Sie die Variable „PrivateKey“ auf den privaten Schlüssel Ihres zweiten Computers fest und ändern Sie anschließend die Variable „PublicKey“ in den öffentlichen Schlüssel Ihres Servers.

Ersetzen Sie die Endpunktvariable durch die IP-Adresse Ihres Servers, gefolgt von „:60102“.

Speichern Sie Ihre Konfigurationsdatei und starten Sie dann den Wireguard-Client der zweiten Maschine:

Verknüpfen des zweiten Clients mit dem Wireguard-Server

Melden Sie sich erneut bei Ihrem Wireguard-Server an und öffnen Sie dann die VPN-Schnittstellenkonfiguration für Ihren zweiten Client:

sudo nano /etc/wireguard/wg1.conf

Scrollen Sie nach unten zum [Peer] und ersetzen Sie dann die Variable „PublicKey“ durch den öffentlichen Schlüssel Ihres zweiten Clients.

Speichern Sie Ihre Konfigurationsdatei und starten Sie dann die zweite VPN-Schnittstelle mit dem Befehl wg-quik:

Bestätigen Sie, dass Ihr erster und zweiter Wireguard-Client korrekt auf Ihrem Server angezeigt werden, indem Sie wg ausführen.

Testen des Wireguard-Netzwerks

Wenn sowohl Ihr Server als auch Ihre Clients im Wireguard-Netzwerk sind, können Sie nun die Konnektivität und Latenz zwischen Ihren Knoten testen. Stellen Sie dazu sicher, dass auf Ihrem System Netzwerkdiagnosetools installiert sind:

sudo apt installiere Net-Tools Curl

Unter Fedora müssen Sie nur curl installieren, da es bereits vorinstallierte Netzwerktools enthält:

Für Arch Linux können Sie Pacman verwenden, um die Netzwerktools und Curl zu installieren:

sudo pacman -S traceroute curl

Beginnen Sie damit, die Route eines Pakets zwischen zwei Clients zu verfolgen. Im Folgenden wird gezeigt, wie ein IP-Paket von „10.0.0.2“ zu „10.0.0.3“ gelangt:

Überprüfen Sie, ob einer Ihrer Knoten auf das öffentliche Internet zugreifen kann, indem Sie eine gängige IP-Adresse anpingen:

Bestätigen Sie abschließend, dass Ihre Knoten dieselbe öffentliche IP-Adresse wie Ihr Wireguard-Server haben:

Das Einrichten eines Wireguard-Netzwerks unter Linux ist der erste Schritt zur Erkundung der faszinierenden Welt der VPNs. Tauchen Sie tiefer ein und sehen Sie sich unsere Auswahl der derzeit besten sicherheitsorientierten VPN-Anbieter an.

Kari Shea über Unsplash Und Wikimedia Commons. Alle Änderungen und Screenshots von Ramces Red.

Index
  1. Warum Wireguard als VPN-Lösung verwenden?
  2. Wireguard erhalten
  3. Einrichten des Wireguard-Servers
  4. Einrichten und Verbinden des Wireguard-Clients
    1. Verknüpfen des Wireguard-Servers mit dem Client
  5. Einen zweiten Client zum Server hinzufügen
    1. Konfigurieren des zweiten Wireguard-Clients
    2. Verknüpfen des zweiten Clients mit dem Wireguard-Server
  6. Testen des Wireguard-Netzwerks

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Go up