Dieses Tutorial zeigt Ihnen, wie Sie Ihren eigenen WireGuard VPN-Server auf Debian 11 Bullseye und Debian 10 Buster einrichten. WireGuard wurde speziell für den Linux-Kernel entwickelt. Es läuft innerhalb des Linux-Kernels und ermöglicht es Ihnen, einen schnellen, modernen und sicheren VPN-Tunnel zu erstellen.
Funktionen von WireGuard VPN
- Leicht und superschnell, bläst OpenVPN aus dem Wasser.
- Plattformübergreifend. WireGuard kann unter Linux, BSD, macOS, Windows, Android, iOS und OpenWRT ausgeführt werden.
- Die Benutzerauthentifizierung erfolgt durch den Austausch öffentlicher Schlüssel, ähnlich wie bei SSH-Schlüsseln.
- Es weist VPN-Clients statische Tunnel-IP-Adressen zu. Einige Leute mögen es vielleicht nicht, aber es kann in manchen Fällen nützlich sein.
- Mobilgeräte können nahtlos zwischen Wi-Fi und Mobilfunknetz wechseln, ohne dass die Verbindung unterbrochen wird.
- Ziel ist es, OpenVPN und IPSec in den meisten Anwendungsfällen zu ersetzen.
Anforderungen
Um diesem Tutorial zu folgen, benötigen Sie einen VPS (Virtual Private Server), der frei auf gesperrte Websites zugreifen kann (außerhalb Ihres Landes oder Internetfiltersystems). Ich empfehle Kamatera VPS, das Folgendes bietet:
- Kostenlose 30-Tage-Testversion.
- Beginnt bei 4 $/Monat (1 GB RAM)
- Hochleistungs-KVM-basiertes VPS
- 9 Rechenzentren auf der ganzen Welt, darunter USA, Kanada, Großbritannien, Deutschland, Niederlande, Hongkong und Israel.
Befolgen Sie das unten verlinkte Tutorial, um Ihren Linux-VPS-Server bei Kamatera zu erstellen.
- So erstellen Sie einen Linux-VPS-Server auf Kamatera
Sobald Sie einen VPS haben, auf dem Debian läuft, befolgen Sie die nachstehenden Anweisungen.
Dieses Tutorial geht davon aus, dass sowohl der VPN-Server als auch der VPN-Client Debian ausführen Betriebssystem.
Schritt 1:WireGuard auf Debian-Server und -Desktop installieren
Melden Sie sich bei Ihrem Debian-Server an. WireGuard ist in Debian 11 (Bullseye) enthalten Repository, sodass Sie die folgenden Befehle ausführen können, um es zu installieren.
sudo apt updatesudo apt install wireguard wireguard-tools linux-headers-$(uname -r)
Debian 10 Benutzer müssen das Backport-Repository mit dem folgenden Befehl hinzufügen.
echo "deb http://deb.debian.org/debian buster-backports main" | sudo tee /etc/apt/sources.list.d/buster-backports.list
Installieren Sie dann WireGuard.
sudo apt updatesudo apt -t buster-backports installiere wireguard wireguard-tools wireguard-dkms linux-headers-$(uname -r)
Verwenden Sie dieselben Befehle, um WireGuard auf Ihrem lokalen Debian-Computer (dem VPN-Client) zu installieren. Beachten Sie, dass Sie auch openresolv
installieren müssen Paket auf dem Client, um den DNS-Server zu konfigurieren.
sudo apt install openresolv
Schritt 2:Öffentliches/Privates Schlüsselpaar generieren
Server
Führen Sie den folgenden Befehl auf dem Debian-Server aus, um ein öffentliches/privates Schlüsselpaar zu erstellen, das unter /etc/wireguard/
gespeichert wird Verzeichnis.
wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key
Kunde
Führen Sie den folgenden Befehl aus, um ein öffentliches/privates Schlüsselpaar auf dem lokalen Debian-Computer (dem VPN-Client) zu erstellen.
wg genkey | sudo tee /etc/wireguard/client_private.key | wg pubkey | sudo tee /etc/wireguard/client_public.key
Schritt 3:WireGuard-Konfigurationsdatei erstellen
Server
Verwenden Sie einen Befehlszeilen-Texteditor wie Nano, um eine WireGuard-Konfigurationsdatei auf dem Debian-Server zu erstellen. wg0
wird der Name der Netzwerkschnittstelle sein.
sudo nano /etc/wireguard/wg0.conf
Kopieren Sie den folgenden Text und fügen Sie ihn in Ihre Konfigurationsdatei ein. Sie müssen Ihren eigenen privaten Serverschlüssel und öffentlichen Clientschlüssel verwenden.
[Schnittstelle]Adresse =10.10.10.1/24ListenPort =51820PrivateKey =cD+ZjXiVIX+0iSX1PNijl4a+88lCbDgw7kO78oXXLEc=[Peer]PublicKey =AYQJf6HbkQ0X0Xyt+cTMTuJe3RFwbuCMF46LKgTwzz4=AllowedIPs
Wo:
- Adresse :Geben Sie die private IP-Adresse des VPN-Servers an. Hier verwende ich den Netzwerkbereich 10.10.10.0/24, sodass es nicht zu Konflikten mit Ihrem Heimnetzwerkbereich kommt. (Die meisten Heimrouter verwenden 192.168.0.0/24 oder 192.168.1.0/24). 10.10.10.1 ist die private IP-Adresse für den VPN-Server.
- PrivateKey :Der private Schlüssel des VPN-Servers, der in
/etc/wireguard/server_private.key
zu finden ist Datei auf dem Server. - ListenPort :Der WireGuard VPN-Server überwacht den UDP-Port 51820, was der Standard ist.
- PublicKey :Der öffentliche Schlüssel des VPN-Clients, der in
/etc/wireguard/client_public.key
zu finden ist Datei auf dem Client-Computer. - ZugelasseneIPs :IP-Adressen, die der VPN-Client verwenden darf. In diesem Beispiel kann der Client nur die IP-Adresse 10.10.10.2 innerhalb des VPN-Tunnels verwenden.
Speichern und schließen Sie die Datei. (Um eine Datei im Nano-Texteditor zu speichern, drücken Sie Ctrl+O
, und drücken Sie dann zur Bestätigung die Eingabetaste. Drücken Sie Ctrl+X
zum Beenden.)
Ändern Sie den Dateiberechtigungsmodus so, dass nur der Root-Benutzer die Dateien lesen kann.
sudo chmod 600 /etc/wireguard/ -R
Kunde
Verwenden Sie einen Befehlszeilen-Texteditor wie Nano, um eine WireGuard-Konfigurationsdatei auf Ihrem lokalen Debian-Computer zu erstellen. wg-client0
wird der Name der Netzwerkschnittstelle sein.
sudo nano /etc/wireguard/wg-client0.conf
Kopieren Sie den folgenden Text und fügen Sie ihn in Ihre Konfigurationsdatei ein. Sie müssen Ihren eigenen privaten Client-Schlüssel und öffentlichen Server-Schlüssel verwenden.
[Interface] Address =10.10.10.2/24DNS =10.10.10.1PrivateKey =Cofa + x5UvHF + a3xJ6enLatG + DoE3I5PhMgKrMKkUyXI =[Peer] PublicKey =kQvxOJI5Km4S1c7WXu2UZFpB8mHGuf3Gz8mmgTIF2U0 =AllowedIPs =0.0.0.0/0Endpoint =12.34.56.78:51820PersistentKeepalive =25
Wo:
- Adresse :Geben Sie die private IP-Adresse des VPN-Clients an.
- DNS :Geben Sie 10.10.10.1 (den VPN-Server) als DNS-Server an. Es wird über die
resolvconf
konfiguriert Befehl. Sie können auch wie folgt mehrere DNS-Server für Redundanz angeben:DNS = 10.10.10.1 8.8.8.8
- PrivateKey :Der private Schlüssel des Clients, der in
/etc/wireguard/client_private.key
zu finden ist Datei auf dem Client-Computer. - PublicKey :Der öffentliche Schlüssel des Servers, der in
/etc/wireguard/server_public.key
zu finden ist Datei auf dem Server. - ZugelasseneIPs :0.0.0.0/0 repräsentiert das gesamte Internet, was bedeutet, dass der gesamte Datenverkehr zum Internet über das VPN geleitet werden sollte.
- Endpunkt :Die öffentliche IP-Adresse und Portnummer des VPN-Servers. Ersetzen Sie 12.34.56.78 durch die echte öffentliche IP-Adresse Ihres Servers.
- PersistentKeepalive :Senden Sie alle 25 Sekunden ein authentifiziertes leeres Paket an den Peer, um die Verbindung aufrechtzuerhalten. Wenn PersistentKeepalive nicht aktiviert ist, kann der VPN-Server den VPN-Client möglicherweise nicht anpingen.
Speichern und schließen Sie die Datei.
Ändern Sie den Dateimodus so, dass nur der Root-Benutzer die Dateien lesen kann.
sudo chmod 600 /etc/wireguard/ -R
Schritt 4:IP-Weiterleitung auf dem Server aktivieren
Damit der VPN-Server Pakete zwischen VPN-Clients und dem Internet weiterleiten kann, müssen wir die IP-Weiterleitung aktivieren. Bearbeiten Sie sysctl.conf
Datei.
sudo nano /etc/sysctl.conf
Fügen Sie am Ende dieser Datei die folgende Zeile hinzu.
net.ipv4.ip_forward =1
Speichern und schließen Sie die Datei. Wenden Sie dann die Änderungen mit dem folgenden Befehl an. Das -p Option lädt Sysctl-Einstellungen aus /etc/sysctl.conf Datei. Dieser Befehl behält unsere Änderungen über Systemneustarts hinweg bei.
sudo sysctl -p
Schritt 5:IP-Masquerading auf dem Server konfigurieren
Wir müssen IP-Masquerading in der Server-Firewall einrichten, damit der Server zu einem virtuellen Router für VPN-Clients wird. Ich werde UFW verwenden, das ein Frontend für die iptables-Firewall ist. Installieren Sie UFW unter Debian mit:
sudo apt install ufw
Zuerst müssen Sie den SSH-Verkehr zulassen.
sudo ufw allow 22/tcp
Suchen Sie als Nächstes den Namen der Hauptnetzwerkschnittstelle Ihres Servers.
IP-Adresse
Wie Sie sehen können, heißt es ens3
auf meinem Debian-Server.
Um IP-Masquerading zu konfigurieren, müssen wir den iptables-Befehl in eine UFW-Konfigurationsdatei einfügen.
sudo nano /etc/ufw/before.rules
Standardmäßig gibt es einige Regeln für den filter
Tisch. Fügen Sie am Ende dieser Datei die folgenden Zeilen hinzu. Ersetzen Sie ens3
mit Ihrem eigenen Netzwerkschnittstellennamen.
# NAT-Tabellenregeln*nat:POSTROUTING ACCEPT [0:0]-A POSTROUTING -o ens3 -j MASQUERADE# Beenden Sie jede Tabelle mit der 'COMMIT'-Zeile oder diese Regeln werden nicht verarbeitetCOMMIT
Im Nano-Texteditor können Sie zum Ende der Datei gehen, indem Sie Ctrl+W
drücken , und drücken Sie dann Ctrl+V
.
Die obigen Zeilen werden angehängt (-A ) eine Regel am Ende von POSTROUTING Kette von nat Tisch. Es verbindet Ihr virtuelles privates Netzwerk mit dem Internet. Und verstecken Sie auch Ihr Netzwerk vor der Außenwelt. Das Internet kann also nur die IP Ihres VPN-Servers sehen, aber nicht die IP Ihres VPN-Clients, genau wie Ihr Heimrouter Ihr privates Heimnetzwerk verbirgt.
Standardmäßig verbietet UFW die Paketweiterleitung. Wir können die Weiterleitung für unser privates Netzwerk zulassen. Suchen Sie den ufw-before-forward
Kette in dieser Datei und fügen Sie die folgenden 3 Zeilen hinzu, die die Paketweiterleitung akzeptieren, wenn die Quell-IP oder Ziel-IP in 10.10.10.0/24
ist Reichweite.
# Weiterleitung für vertrauenswürdiges Netzwerk zulassen-A ufw-before-forward -s 10.10.10.0/24 -j ACCEPT-A ufw-before-forward -d 10.10.10.0/24 -j ACCEPT
Speichern und schließen Sie die Datei. Aktivieren Sie dann UFW.
sudo ufw aktivieren
Wenn Sie UFW zuvor aktiviert haben, können Sie systemctl verwenden, um UFW neu zu starten.
sudo systemctl restart ufw
Wenn Sie nun die Regeln in der POSTROUTING-Kette der NAT-Tabelle auflisten, indem Sie den folgenden Befehl verwenden:
sudo iptables -t nat -L POSTROUTING
Sie können die Maskerade-Regel sehen.
Schritt 6:Installieren Sie einen DNS-Resolver auf dem Server
Da wir den VPN-Server als DNS-Server für den Client angegeben haben, müssen wir einen DNS-Resolver auf dem VPN-Server ausführen. Wir können den bind9 DNS-Server installieren.
sudo apt install bind9
Sobald es installiert ist, wird BIND automatisch gestartet. Sie können den Status überprüfen mit:
systemctl status bind9
Beispielausgabe:
● named.service - BIND Domain Name Server Geladen:geladen (/lib/systemd/system/named.service; aktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Sonntag 2020-05-17 08:11 :26 UTC; vor 37s Dokumente:man:named(8) Haupt-PID:13820 (named) Aufgaben:5 (Grenze:1074) Arbeitsspeicher:14,3 MB CGroup:/system.slice/named.service └─13820 /usr/sbin/named -f -u binden
Wenn es nicht läuft, starten Sie es mit:
sudo systemctl start bind9
Bearbeiten Sie die Konfigurationsdatei des BIND-DNS-Servers.
sudo nano /etc/bind/named.conf.options
Fügen Sie die folgende Zeile hinzu, damit VPN-Clients rekursive DNS-Abfragen senden können.
allow-recursion { 127.0.0.1; 10.10.10.0/24; };
Speichern und schließen Sie die Datei. Starten Sie BIND9 neu, damit die Änderungen wirksam werden.
sudo systemctl restart bind9
Dann müssen Sie den folgenden Befehl ausführen, damit VPN-Clients eine Verbindung zu Port 53 herstellen können.
sudo ufw insert 1 erlaubt in von 10.10.10.0/24
Schritt 7:WireGuard-Port in der Firewall öffnen
Führen Sie den folgenden Befehl aus, um den UDP-Port 51820 auf dem Server zu öffnen.
sudo ufw allow 51820/udp
Schritt 8:WireGuard starten
Server
Führen Sie den folgenden Befehl auf dem Server aus, um WireGuard zu starten.
sudo wg-quick up /etc/wireguard/wg0.conf
Um es zu stoppen, führen Sie
aussudo wg-quick down /etc/wireguard/wg0.conf
Sie können auch den systemd-Dienst verwenden, um WireGuard zu starten.
sudo systemctl start [email protected]
Autostart beim Systemstart aktivieren.
sudo systemctl enable [email protected]
Überprüfen Sie seinen Status mit dem folgenden Befehl. Sein Status sollte active (exited)
sein .
Systemctl-Status [E-Mail-geschützt]
Jetzt ist der WireGuard-Server bereit, Client-Verbindungen zu akzeptieren.
Kunde
Starten Sie WireGuard.
sudo systemctl start [email protected]
Autostart beim Systemstart aktivieren.
sudo systemctl enable [email protected]
Überprüfen Sie den Status:
Systemctl-Status [E-Mail-geschützt]
Gehen Sie nun zu dieser Website:http://icanhazip.com/
um Ihre öffentliche IP-Adresse zu überprüfen. Wenn alles gut gelaufen ist, sollte die öffentliche IP-Adresse Ihres VPN-Servers anstelle der öffentlichen IP-Adresse Ihres Client-Computers angezeigt werden.
Sie können auch den folgenden Befehl ausführen, um die aktuelle öffentliche IP-Adresse abzurufen.
curl https://icanhazip.com
Tipps zur Fehlerbehebung
Ping-Test
Sie können vom VPN-Server zum VPN-Client pingen (ping 10.10.10.2
), um zu sehen, ob der Tunnel funktioniert. Wenn Sie im Ping die folgende Fehlermeldung sehen,
ping:sendmsg:Erforderlicher Schlüssel nicht verfügbar
kann es sein, dass die AllowedIPs
Parameter ist falsch, wie ein Tippfehler.
Wenn die Ping-Fehlermeldung lautet
ping:sendmsg:Zieladresse erforderlich
es könnte sein, dass der private/öffentliche Schlüssel in Ihren Konfigurationsdateien falsch ist.
Kann nicht im Internet surfen
Wenn der VPN-Tunnel erfolgreich eingerichtet wurde, sich die öffentliche IP-Adresse des Clients jedoch nicht ändert, liegt das daran, dass die Maskierungs- oder Weiterleitungsregel in Ihrer UFW-Konfigurationsdatei nicht funktioniert. Ich hatte einmal einen Tippfehler in /etc/ufw/before.rules
Datei, die dazu führte, dass mein Computer nicht im Internet surfen konnte.
Beachten Sie, dass ich die Verwendung von SaveConfig=true
nicht empfehle im [Interface]
Abschnitt der WireGuard-Konfigurationsdatei. SaveConfig
weist WireGuard an, die Laufzeitkonfiguration beim Herunterfahren zu speichern. Wenn Sie also zusätzlich [Peer]
hinzufügen in der Konfigurationsdatei und starten Sie WireGuard neu, Ihre neu hinzugefügten Konfigurationen werden überschrieben.
Debug-Protokollierung im Linux-Kernel aktivieren
Wenn Sie Linux-Kernel 5.6 oder höher verwenden, können Sie die Debug-Protokollierung für WireGuard mit dem folgenden Befehl aktivieren.
sudo su -echo module wireguard +p> /sys/kernel/debug/dynamic_debug/control
Dann können Sie die Debug-Protokolle mit
anzeigensudo dmesg -wH
oder
sudo journalctl -kf
Neu starten
Wenn Ihr VPN immer noch nicht funktioniert, versuchen Sie, den VPN-Server neu zu starten.
sudo systemctl restart [email protected]
Stoppen Sie dann den VPN-Client.
sudo systemctl stop [email protected]
Und aktualisieren Sie Softwarepakete auf dem VPN-Client.
sudo apt-Aktualisierung; sudo apt upgrade
Als nächstes starten Sie den VPN-Client neu.
sudo shutdown -r nowsudo systemctl start [email protected]
Zusätzliche VPN-Clients hinzufügen
WireGuard wurde entwickelt, um eine IP-Adresse mit einem VPN-Client zu verknüpfen. Um weitere VPN-Clients hinzuzufügen, müssen Sie für jeden Client ein eindeutiges privates/öffentliches Schlüsselpaar erstellen und dann den öffentlichen Schlüssel jedes VPN-Clients zur Konfigurationsdatei des Servers hinzufügen (/etc/wireguard/wg0.conf
) so:
[Schnittstelle] Adresse =10.10.10.1/24PrivateKey =UIFH+XXJJ0G0UAZJ6VPQSBB/O68SYVQDMYJPY/FLGFA =Hörport =51820 [Peer] publicKkey =10222G2GSUSCK/yQUSKKE/kRUSPY/kRUSPET/kRUSPET/kRUSPET/3QIT5OHHZKKKJWZKJWZKJWZKKJWZKKJWZK. 1Z/3rtl0i7cJorcinB7T4UOIzScifPNEIESFD8=Erlaubte IPs =10.10.10.3/32[Peer]PublicKey =EVstHZc6QamzPgefDGPLFEjGyedJk6SZbCJttpzcvC8=Erlaubte IPs =10.10.10.4/32
Jeder VPN-Client hat eine statische private IP-Adresse (10.10.10.2, 10.10.10.3, 10.10.10.4 usw.). Starten Sie den WireGuard-Server neu, damit die Änderungen wirksam werden.
sudo systemctl restart [email protected]
Fügen Sie dann wie gewohnt die WireGuard-Konfiguration auf jedem VPN-Client hinzu.
Richtlinien-Routing, Split-Tunneling und VPN-Kill-Switch
Jetzt zeige ich Ihnen, wie Sie Richtlinien-Routing verwenden , Split-Tunneling , und VPN-Kill-Switch mit WireGuard VPN. Hinweis dass es nicht empfohlen wird, sie in Verbindung miteinander zu verwenden. Wenn Sie Richtlinien-Routing verwenden, sollten Sie Split-Tunneling oder VPN-Kill-Switch nicht aktivieren und umgekehrt.
Richtlinien-Routing
Standardmäßig wird der gesamte Datenverkehr auf dem VPN-Client über den VPN-Server geleitet. Manchmal möchten Sie möglicherweise nur eine bestimmte Art von Datenverkehr basierend auf dem Transportschichtprotokoll und dem Zielport weiterleiten. Dies wird als Richtlinien-Routing bezeichnet.
Das Richtlinien-Routing ist auf dem Client-Computer konfiguriert, und wir müssen den WireGuard-Client-Prozess stoppen.
sudo systemctl stop [email protected]
Bearbeiten Sie dann die Client-Konfigurationsdatei.
sudo nano /etc/wireguard/wg-client0.conf
Zum Beispiel, wenn Sie die folgenden 3 Zeilen in [interface]
hinzufügen Abschnitt, dann erstellt WireGuard eine Routing-Tabelle mit dem Namen „1234“ und fügt die IP-Regel in die Routing-Tabelle ein. In diesem Beispiel wird der Datenverkehr nur dann über den VPN-Server geleitet, wenn TCP als Transportschichtprotokoll verwendet wird und der Zielport 25 ist, d. h. wenn der Client-Computer E-Mails sendet.
Table =1234PostUp =IP-Regel ipproto tcp dport 25 Tabelle 1234PreDown =ip-Regel ipproto tcp dport 25 Tabelle 1234 löschen
Speichern und schließen Sie die Datei. Starten Sie dann den WireGuard-Client erneut.
sudo systemctl start [email protected]
Split-Tunneling
Standardmäßig wird der gesamte Datenverkehr auf dem VPN-Client über den VPN-Server geleitet. So aktivieren Sie Split-Tunneling, also nur Traffic zu 10.10.10.0/24
Der IP-Bereich wird durch WireGuard VPN getunnelt. Dies ist nützlich, wenn Sie ein privates Netzwerk für mehrere Cloud-Server aufbauen möchten, da VPN-Clients auf Cloud-Servern ausgeführt werden und wenn Sie einen vollständigen VPN-Tunnel verwenden, dann verlieren Sie wahrscheinlich die Verbindung zu den Cloud-Servern.
Bearbeiten Sie die Client-Konfigurationsdatei.
sudo nano /etc/wireguard/wg-client0.conf
Ändern
AllowedIPs =0.0.0.0/0
An
AllowedIPs =10.10.10.0/24
Der Datenverkehr wird also nur dann über VPN geleitet, wenn die Zieladresse im IP-Bereich 10.10.10.0/24 liegt. Speichern und schließen Sie die Datei. Starten Sie dann den WireGuard-Client neu.
sudo systemctl restart [email protected]
VPN-Kill-Switch
Standardmäßig kann Ihr Computer bei einer Unterbrechung der VPN-Verbindung über das normale Gateway auf das Internet zugreifen. Möglicherweise möchten Sie die Kill-Switch-Funktion aktivieren, die den Fluss unverschlüsselter Pakete durch Nicht-WireGuard-Schnittstellen verhindert.
Beenden Sie den WireGuard-Client-Prozess.
sudo systemctl stop [email protected]
Bearbeiten Sie die Client-Konfigurationsdatei.
sudo nano /etc/wireguard/wg-client0.conf
Fügen Sie die folgenden zwei Zeilen in [interface]
hinzu Abschnitt.
PostUp =iptables -I AUSGABE ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECTPreDown =iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
So:
[Interface]Address =10.10.10.2/24DNS =10.10.10.1PrivateKey =cOFA+x5UvHF+a3xJ6enLatG+DoE3I5PhMgKrMKkUyXI=PostUp =iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECTPreDown =iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT [Peer]PublicKey =kQvxOJI5Km4S1c7WXu2UZFpB8mHGuf3Gz8mmgTIF2U0=AllowedIPs =0.0.0.0/0Endpoint =12.34.56.78:51820PersistentKeepalive =25
Speichern und schließen Sie die Datei. Starten Sie dann den WireGuard-Client.
sudo systemctl start [email protected]
Installieren von Linux Kernel 5.x auf Debian 10
Die aktuelle Linux-Kernel-Version auf Debian 10 ist 4.19. In Schritt 1 haben wir das Backport-Repository auf Debian 10 hinzugefügt. Das Backport-Repository enthält zum Zeitpunkt der Erstellung dieses Dokuments den Linux-Kernel 5.10. Sie wissen wahrscheinlich, dass das Wireguard-Modul ab Version 5.4 im Linux-Kernel enthalten ist. Wenn wir den Linux-Kernel 5.10 auf Debian 10 installieren, müssen wir das Wireguard-Modul nicht erstellen, wenn das System den Linux-Kernel aktualisiert. Tatsächlich hatte mein Debian 10-Server einmal ein Problem beim Erstellen des Wireguard-Moduls mit wireguard-dkms.
Beachten Sie, dass zum Zeitpunkt des Lesens dieses Artikels das Debian 10-Backport-Repository möglicherweise Kernel 5.10 entfernt und Kernel 5.11 hinzugefügt hat. Ersetzen Sie in den folgenden Befehlen einfach 5.8 durch 5.9.
Um den Linux-Kernel 5.8 auf Debian 10-Cloud-Servern zu installieren, führen Sie den folgenden Befehl aus.
sudo apt install linux-image-5.10.0-0.bpo.7-cloud-amd64 linux-headers-5.10.0-0.bpo.7-cloud-amd64
Um den Linux-Kernel 5.8 auf einem Debian 10-PC zu installieren, führen Sie den folgenden Befehl aus.
sudo apt install linux-image-5.10.0-0.bpo.7-amd64 linux-headers-5.10.0-0.bpo.7-amd64
Starten Sie dann Ihre Debian 10-Box neu.
sudo shutdown -r now
Überprüfen Sie Ihre Linux-Kernel-Version.
uname -r
Beispielausgabe
5.10.0-0.bpo.7-cloud-amd64
Obwohl wir die wireguard-dkms
nicht mehr benötigen Paket, es ist eine Abhängigkeit für wireguard
Paket, sodass wir es nicht aus dem System entfernen können. Sie werden wahrscheinlich den folgenden Fehler sehen, wenn Sie wireguard
aktualisieren Paket.
Fehler! Die dkms.conf für dieses Modul enthält eine BUILD_EXCLUSIVE-Direktive, die nicht zu diesem Kernel/Arch passt. Dies zeigt an, dass es nicht gebaut werden sollte
Dies zeigt wireguard-dkms
an versucht den wireguard
zu bauen -Modul in den Linux-Kernel, aber Linux 5.10 enthält einen nativen wireguard
Modul, sodass der Build-Vorgang verhindert wird und Sie diesen Fehler ignorieren können.