So installierst du Wireguard VPN auf Rocky Linux 9

Wireguard ist eine Open-Source-VPN-Protokoll-Alternative zu IPSec, IKEv2 und OpenVPN. Wiruguard wurde für Linux- und Unix-Betriebssysteme entwickelt. Es läuft auf dem Linux-Kernelspace, was Wireguard schneller und zuverlässiger macht. Wireguard wird verwendet, um sichere Tunnelverbindungen zwischen zwei oder mehr Computern herzustellen.

Wireguard zielt darauf ab, VPN-Protokolle wie IPSec, IKEv2 und OpenVPN zu ersetzen. Wireguard ist leichter, schneller, einfach einzurichten und effizienter. Gleichzeitig hat Wiregurad den Sicherheitsaspekt des VPN-Protokolls nicht geopfert. Wireguard unterstützt moderne Kryptografie wie das Noise-Protokoll-Framework, Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, HKDF und sichere Trusted Constructions.

Im Vergleich zu anderen VPN-Protokollen wie OpenVPN, IPSec und IKEv2 ist Wireguard ein neues VPN-Protokoll. Wireguard wurde 2015 von Jason A. Donenfeld als alternatives VPN-Protokoll veröffentlicht. 2020 wurde es von Linus Torvalds in den Linux-Kernel v5.6 integriert und im selben Jahr auch auf FreeBSD 13 portiert.

In dieser Anleitung erfährst du, wie du Wirgeuard Server auf einem Rocky Linux 9 Server installierst und einrichtest. Außerdem erfährst du, wie du einen Client-Rechner einrichtest, der sich mit dem Wireguard-Server verbindet.

In diesem Beispiel kannst du jede Linux-Distribution als Client-Rechner verwenden. In diesem Leitfaden wird jedoch der Rocky Linux-Client verwendet, eine der RHEL9-basierten Distributionen.

Voraussetzung

Um mit diesem Leitfaden zu beginnen, musst du sicherstellen, dass du die folgenden Voraussetzungen erfüllst:

  • Ein Rocky Linux 9 Server – In diesem Beispiel wird ein Rocky Linux mit dem Hostnamen‚wireguard-rocky‚ verwendet.
  • Ein Nicht-Root-Benutzer mit sudo/root-Administrator-Rechten.
  • Ein SELinux, das im permissiven Modus läuft.

Nachdem du nun die Voraussetzungen geschaffen hast, kannst du mit der Installation und Konfiguration des Wireguard-Servers beginnen.

Aktiviere das Wireguard-Kernelmodul

Die neueste Version von Rocky Linux 9 wird mit dem Standard-Linux-Kernel 5.14 ausgeliefert, in den standardmäßig das Kernelmodul „Wireguard“ eingebettet ist. In diesem Schritt aktivierst du das Wirguard-Kernelmodul und installierst die „wireguard-tools“ auf deinem Rocky Linux-Server.

Führe den folgenden modprobe-Befehl aus, um das Kernelmodul „wireguard“ zu aktivieren. Überprüfe dann die Liste der aktivierten Kernelmodule mit dem Befehl „lsmod“.

sudo modprobe wireguard
lsmod | grep wireguard

Wenn das„wireguard„-Kernelmodul aktiviert ist, solltest du eine ähnliche Ausgabe wie die folgende erhalten:

Drahtschutz aktivieren

Um das wireguard-Modul dauerhaft zu laden, kannst du den folgenden Befehl ausführen, um die neue Konfigurationsdatei zum Verzeichnis„/etc/modules-load.d/“ hinzuzufügen. Dadurch wird das wireguard-Kernelmodul beim Systemstart dauerhaft geladen.

sudo echo wireguard > /etc/modules-load.d/wireguard.conf

Nachdem das Kernelmodul„wireguard“ aktiviert wurde, musst du das Paket„wireguard-tools“ installieren, um den Wireguard-Server zu verwalten. Dazu gehört das Generieren von Schlüsseln, das Starten des Wireguard-Servers und vieles mehr.

Führe den folgenden dnf-Befehl aus, um„wireguard-tools“ zu installieren. Wenn du zur Bestätigung aufgefordert wirst, gib y ein und drücke ENTER, um fortzufahren.

sudo dnf install wireguard-tools

Jetzt sollte die Installation der„wireguard-tools“ beginnen.

wireguard Werkzeuge installieren

Dein Rocky Linux Server hat jetzt das Kernelmodul„wireguard“ aktiviert und die„wireguard-tools“ installiert. Als Nächstes erfährst du, wie du mit den Wireguard-Tools Schlüsselpaare für den Wireguard-Server und den Client erzeugst.

Erzeugen von Server- und Client-Schlüsselpaaren

Die wireguard-Tools bieten eine Befehlszeile für die Verwaltung der Wireguard-Installation. Die wireguard-tools stellen zwei wichtige Dienstprogramme zur Verfügung:

  • wg – ein Kommandozeilenprogramm, mit dem du die Wireguard-Tunnelschnittstelle einrichten kannst. Mit diesem Dienstprogramm kannst du Schlüsselpaare erzeugen, die aktuelle Wireguard-Laufzeit und -Schnittstelle überprüfen und die Wireguard-Tunnelschnittstelle einrichten.
  • wg-quick – eine einfache Befehlszeile, mit der du die Wireguard-Schnittstelle verwalten kannst. Über den Befehl wg-quick kannst du alle Wireguard-Schnittstellen starten, stoppen und neu starten.

Der erste Schritt nach der Aktivierung des Wireguard-Kernelmoduls und der Installation der Wireguard-Tools ist die Erstellung von Schlüsselpaaren für den Wireguard-Server und den Client. Dies kann über das Dienstprogramm„wg“ erledigt werden.

Erzeugen des Server-Schlüsselpaars

Führe den folgenden Befehl ‚wg genkey‘ aus, um den privaten Schlüssel des Servers zu erzeugen ‚/etc/wireguard/server.key‚. Ändere dann die Standardberechtigung in ‚0400um Schreib- und Ausführungsrechte für andere und Gruppen zu deaktivieren.

wg genkey | sudo tee /etc/wireguard/server.key
sudo chmod 0400 /etc/wireguard/server.key

Danach führst du den folgenden Befehl aus, um den öffentlichen Schlüssel für den Wireguard-Server zu erzeugen./etc/wireguard/server.pub‚. Der öffentliche Schlüssel von wireguard wird aus dem privaten Schlüssel von wireguard abgeleitet./etc/wireguard/server.key‚.

sudo cat /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub

Ausgabe:

Server-Schlüsselpaar erzeugen

Als Nächstes überprüfst du den öffentlichen und den privaten Schlüssel des wireguard-Servers mit dem unten stehenden Befehl cat.

cat /etc/wireguard/server.key
cat /etc/wireguard/server.pub

Es kann sein, dass du einen anderen Schlüssel für den öffentlichen und den privaten Schlüssel hast, aber die Ausgabe ist ähnlich wie diese:

Server-Schlüsselpaar verifizieren

Erzeugen des Client-Schlüsselpaars

Nachdem du das Schlüsselpaar für den wireguard-Server erzeugt hast, generierst du ein neues für den Client. In diesem Beispiel erzeugst du ein neues Schlüsselpaar mit dem Namen„client1„.

Führe den folgenden Befehl aus, um ein neues Verzeichnis zu erstellen ‚/etc/wireguard/clients‚. In diesem Verzeichnis werden die Schlüsselpaare der Clients gespeichert.

mkdir -p /etc/wireguard/clients

Als Nächstes führst du den folgenden Befehl „wg genkey“ aus, um den privaten Schlüssel des Clients zu erzeugen ‚/etc/wireguard/clients/client1.key‚. Dann generierst du den öffentlichen Schlüssel des Clients ‚/etc/wireguard/clients/client1.pubmit dem Befehl‚wg pubkey‚.

wg genkey | tee /etc/wireguard/clients/client1.key
cat /etc/wireguard/clients/client1.key | wg pubkey | tee /etc/wireguard/clients/client1.pub

Ausgabe:

Client-Schlüsselpaar erzeugen

Überprüfe nun den öffentlichen und den privaten Schlüssel des Clients mit dem unten stehenden Befehl cat.

cat /etc/wireguard/clients/client1.key
cat /etc/wireguard/clients/client1.pub

Der Schlüssel sollte für das Schlüsselpaar des Wireguard-Servers und des Clients gleich sein, also ein base64-ähnlicher Schlüssel.

Client-Schlüsselpaar verifizieren

Wireguard Server konfigurieren

In diesem Schritt erstellst du eine neue Konfigurationsdatei für den Wireguard-Server, richtest die Wireguard-Schnittstelle ein und richtest die Peer-Verbindung für Client-Verbindungen ein. Dazu gehört die Konfiguration des wireguard VPN-Subnetzes, der IP-Adresse des wireguard-Servers und der IP-Adresse des Peer-Clients.

Erstelle zunächst eine neue wireguard-Server-Konfigurationsdatei /etc/wireguard/wg0.conf“ mit dem unten stehenden nano-Editor-Befehl.

sudo nano /etc/wireguard/wg0.conf
Füge die folgenden Zeilen in die Datei ein und achte darauf, dass du den"PrivateKey" durch den privaten Schlüssel des Wirguard-Servers"server.key" ersetzt. Damit richtest du auch die Schnittstelle des Wireguard-Servers für die IP-Adresse"10.8.0.1" ein. Und für die Client-Verbindung verwendest du den UDP-Port 51820. Und schließlich aktivierst du den Parameter SaveConfig, der sicherstellt, dass alle Änderungen in der Wireguard-Konfigurationsdatei gespeichert werden, auch wenn die Wireguard-Schnittstelle ausgeschaltet ist.
[Interface]
# Wireguard Server private key - server.key
PrivateKey = iHaI5bkEbW8wqTQDbU/KITGhxtKoiezWVohVZsKwj3w=
# Wireguard interface will be run at 10.8.0.1
Address = 10.8.0.1/24

# Clients will connect to UDP port 51820
ListenPort = 51820

# Ensure any changes will be saved to the Wireguard config file
SaveConfig = true

Als Nächstes fügst du die folgenden Zeilen hinzu, um die Client-Peer-Verbindung zu definieren. Achte darauf, dass du den Parameter‚PublicKey‚ mit dem öffentlichen Schlüssel des Clients‚client1.pub‚ änderst. Mit dem Parameter„AllowedIPs“ kannst du festlegen, welcher Wireguard-Client auf diese Gegenstelle zugreifen darf. In diesem Beispiel dürfen nur Clients mit der IP‚10.8.0.8‚ auf diese Peer-Verbindung zugreifen. Außerdem kannst du den Zugriff auf den Wireguard-Peer auch für interne Netzwerk-Subnetze wie „172.16.100.0/24“ erlauben.

[Peer]
# Wireguard client public key - client1.pub
PublicKey = iWskvxyj+QK4185xO6Z2Fb0XYo1jGyiyI3iKbyGTkT8=
# clients' VPN IP addresses you allow to connect
# possible to specify subnet ? [172.16.100.0/24]
AllowedIPs = 10.8.0.8/24

Speichere und beende die Datei, wenn du fertig bist.

Damit hast du nun die Grundkonfiguration für den Wreguard-Server erstellt. Außerdem hast du eine Peer-Verbindung für den Client mit dem öffentlichen Schlüssel„client1.pub“ definiert. Im nächsten Schritt richtest du die Portweiterleitung auf dem Wireguard-Server ein und erstellst die Firewalld-Regeln für die Weiterleitung des Datenverkehrs.

Einrichten der Portweiterleitung

Um einen VPN-Server einzurichten, musst du die Portweiterleitung auf deinem Einsatzserver aktivieren. In diesem Schritt aktivierst du die Portweiterleitung auf deinem Rocky Linux Server über die Datei „/etc/sysctl.conf“.

Öffne die Konfigurationsdatei„/etc/sysctl.conf“ mit dem unten stehenden nano-Editor.

sudo nano /etc/sysctl.conf

Füge die folgenden Zeilen am Ende der Zeile hinzu. Mit diesen Zeilen wird die Portweiterleitung sowohl für IPv4 als auch für IPv6 aktiviert. Ob du IPv6 brauchst oder nicht, kannst du deaktivieren, indem du einen Kommentar‚#‚ an den Anfang der Zeile setzt.

# Port Forwarding for IPv4
net.ipv4.ip_forward=1
# Port forwarding for IPv6
net.ipv6.conf.all.forwarding=1

Speichere die Datei und beende den Editor, wenn du fertig bist.

Führe nun den unten stehenden Befehl„sysctl“ aus, um die Änderungen in der Datei„/etc/sysctl.conf“ zu übernehmen.

sudo sysctl -p

Du erhältst eine ähnliche Ausgabe wie diese:

Portweiterleitung aktivieren

Wenn Port-Forwarding aktiviert ist, richtest du als Nächstes eine Firewalld ein, die den Datenverkehr von Clients an die spezifische Netzwerkschnittstelle des Wireguard-Servers weiterleitet.

Firewalld einrichten

In diesem Schritt richtest du die Firewalld auf dem Wireguard-Server ein. Du leitest den Datenverkehr der Clients über die Firewalld an die spezielle Netzwerkschnittstelle des Wireguard-Servers weiter. Das kannst du tun, indem du der Firewalld permanent neue Regeln hinzufügst oder indem du die wireguard-Parameter„PostUp“ und„PostDown“ in der Wireguard-Konfigurationsdatei verwendest.

Bevor du beginnst, führe den folgenden ip-Befehl aus, um die Standard-Netzwerkschnittstelle zu überprüfen, die für den Internetzugang des Wireguard-Servers verwendet wird.

ip route show default

Du erhältst eine ähnliche Ausgabe wie diese – In diesem Beispiel verwendet der Wireguard-Server die Schnittstelle eth0 für den Internetzugang. Möglicherweise hast du andere Namen für Netzwerkschnittstellen auf deinem Server.

Standard-Route anzeigen

Als Nächstes öffnest du die Konfigurationsdatei des wireguard-Servers ‚/etc/wireguard/wg0.conf‚ mit dem unten stehenden nano-Editor-Befehl.

sudo nano /etc/wireguard/wg0.conf

Füge die folgenden Zeilen in den Abschnitt ‚[Interface]‚ ein.

PostUp = firewall-cmd --zone=public --add-masquerade
PostUp = firewall-cmd --direct --add-rule ipv4 filter FORWARD 0 -i wg -o eth0 -j ACCEPT
PostUp = firewall-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE
PostDown = firewall-cmd --zone=public --remove-masquerade
PostDown = firewall-cmd --direct --remove-rule ipv4 filter FORWARD 0 -i wg -o eth0 -j ACCEPT
PostDown = firewall-cmd --direct --remove-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE

Speichere und beende die Datei.

  • Der Parameter„PostUp“ wird immer dann ausgeführt, wenn der Wirguard-Server den VPN-Tunnel startet.
  • Der Parameter‚PostDown‚ wird immer dann ausgeführt, wenn der Wireguard-Server den VPN-Tunnel beendet.
  • Der Befehl‚firewall-cmd –zone=public –add-masquerade‚ aktiviert Masquerade auf Firewalld.
  • Der Befehl„firewall-cmd –direct –add-rule ipv4 filter FORWARD 0 -i wg -o eth0 -j ACCEPT“ fügt die Firewalld-Rich-Rule für den Datenverkehr von der Wireguard-Schnittstelle zu eth0 hinzu.
  • Der Befehl ‚firewall-cmd –direct –add-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE‚ aktiviert NAT über die eth0-Schnittstelle.
  • Im Parameter„PostDown“ werden alle diese Befehle verwendet, um die Änderungen an der Firewalld rückgängig zu machen, indem Regeln entfernt werden, die während der Ausführung der Befehle im Parameter„PostUp“ angewendet wurden.

Als Nächstes führst du den unten stehenden Befehl firewall-cmd aus, um den UDP-Port 51820 zu öffnen, der für Wirguard-Clients verwendet wird. Lade dann die Firewalld neu, um die Änderungen zu übernehmen.

sudo firewall-cmd --add-port=51820/udp --permanent
sudo firewall-cmd --reload

Überprüfe abschließend die Firewall-Regeln mit dem folgenden firewall-cmd-Befehl.

sudo firewall-cmd --list-all

Du solltest eine Ausgabe wie diese erhalten – Der wireguard Client Port 51820/udp wurde der Firewalld hinzugefügt.

firewalld einrichten

Damit hast du die Portweiterleitung auf dem wireguard-Server aktiviert und die Firewalld so konfiguriert, dass sie den Datenverkehr von der wireguard-Schnittstelle an die entsprechende Netzwerkschnittstelle weiterleitet. Jetzt kannst du den Wireguard-Server starten.

Wireguard Server starten

In diesem Schritt startest und aktivierst du den Wireguard-Server. Außerdem überprüfst du den Wireguard-Server und die wg0-Schnittstelle, die vom Wireguard-Dienst erstellt wird.

Führe den folgenden systemctl-Befehl aus, um den Wireguard-Server zu starten und zu aktivieren. Dadurch wird der Wireguard-Dienst gestartet und eine neue Wireguard-Schnittstelle„wg0“ erstellt.

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

Überprüfe den Wireguard-Server mit dem unten stehenden systemctl-Befehl. Damit stellst du sicher, dass der wireguard-Server läuft.

sudo systemctl status wg-quick@wg0.service

Du erhältst eine ähnliche Ausgabe wie diese – Der wireguard Server ist jetzt aktiviert und wird beim Booten automatisch gestartet. Und der Status des Wireguard-Servers lautet „running“.

Verify Wireguard Server starten

Du kannst auch die Schnittstelle „wg0“, die vom Wireguard-Server erstellt wurde, mit dem folgenden ip-Befehl überprüfen.

ip a show wg0

Du erhältst die detaillierte Schnittstelle wg0, die mit der wireguard-Serverkonfigurationsdatei „/etc/wireguard/wg0.conf“ übereinstimmt. Die Schnittstelle wg0 sollte eine IP-Adresse„10.8.0.1“ haben, wie in der wireguard-Konfigurationsdatei„/etc/wireguard/wg0.conf“ beschrieben.

wireguard ip verifizieren

Eine andere Methode zum Starten des Wireguard-Servers ist die Verwendung des Befehls„wg-quick„, der von wireguard-tools bereitgestellt wird.

Führe den Befehl„wg-quick up“ aus, um den Wireguard-Server zu starten, und den Befehl„wg-quick down„, um den Wireguard-Server zu beenden. Vergewissere dich außerdem, dass du den vollständigen Pfad der Konfigurationsdatei deines Wireguard-Servers ‚/etc/wireguard/wg0.conf‚.

sudo wg-quick up /etc/wireguard/wg0.conf
sudo wg-quick down /etc/wireguard/wg0.conf

Jetzt läuft der Wireguard-Server auf dem Rocky-Linux-Server. Im nächsten Schritt richtest du einen Client-Rechner ein und verbindest ihn mit dem wireguard-Server.

Einrichten des Clients und Verbinden mit dem Wireguard Server

In diesem Schritt richtest du einen Wireguard auf einem Linux-Client-Rechner ein und verbindest ihn dann mit dem Wireguard-Server. In diesem Beispiel wird ein Rocky Linux mit dem Hostnamen „client1“ als Client-Rechner verwendet, du kannst aber auch jede andere Linux-Distribution verwenden.

Melde dich auf dem Client-Rechner an und führe den folgenden dnf-Befehl aus, um das Paket wireguard-tools auf deinem Client zu installieren. Dieser Vorgang installiert auch die Abhängigkeit „systemd-resolved“, die von wireguard-tools für die Verwaltung des DNS-Resolvers verwendet wird.

sudo dnf install wireguard-tools

Gib y ein, wenn du dazu aufgefordert wirst, und drücke ENTER, um fortzufahren.

wireguaard tools installieren

Während der Installation von„wireguard-tools“ wird auch das Paket systemd-resolved als Abhängigkeit installiert.

Führe den folgenden Befehl aus, um den Dienst„systemd-resolved“ zu starten und zu aktivieren.

sudo systemctl start systemd-resolved
sudo systemctl enable systemd-resolved

Wenn die wireguard-tools installiert sind und systemd-resolved läuft, richtest du als Nächstes den NetworkManager so ein, dass ersystemd-resolved als DNS-Backend verwendet.

Öffne die NetworkManager-Konfigurationsdatei„/etc/NetworkManager/NetworkManager.conf“ mit dem unten stehenden nano-Editor-Befehl.

sudo nano /etc/NetworkManager/NetworkManager.conf

Füge den Parameter „dns“ im Abschnitt „[main]“ wie unten beschrieben hinzu.

[main]
dns=systemd-resolved

Speichere die Datei und beende den Editor.

Als Nächstes führst du den folgenden Befehl aus, um die Datei „/etc/resolv.conf“ zu entfernen und eine neue Symlink-Datei der von systemd-resolved verwalteten Datei „resolv.conf“ zu erstellen.

rm -f /etc/resolv.conf
sudo ln -s /usr/lib/systemd/resolv.conf /etc/resolv.conf

Starte nun den NetworkManager-Dienst neu, um die Änderungen zu übernehmen.

sudo systemctl restart NetworkManager

Jetzt, da der NetworkManager konfiguriert ist, kannst du den Wireguard-Client einrichten.

Erstelle eine neue Datei„/etc/wireguard/wg-client1.conf“ mit dem unten stehenden nano-Editor.

sudo nano /etc/wireguard/wg-client1.conf

Füge die folgenden Zeilen in die Datei ein.

[Interface]
# Define the IP address for the client - must be matched with wg0 on Wireguard Server
Address = 10.8.0.8/24
# Private key for the client - client1.key
PrivateKey = 4FsCdtKr9GrLiX7zpNEYeqodMa5oSeHwH/m9hsNNfEs=

# Run resolvectl command
PostUp = resolvectl dns %i 1.1.1.1 9.9.9.9; resolvectl domain %i ~.
PreDown = resolvectl revert %i

[Peer]
# Public key of the Wireguard server - server.pub
PublicKey = aK+MQ48PVopb8j1Vjs8Fvgz5ZIG2k6pmVZs8iVsgr1E=

# Allow all traffic to be routed via Wireguard VPN
AllowedIPs = 0.0.0.0/0

# Public IP address of the Wireguard Server
Endpoint = 192.168.5.59:51820

# Sending Keepalive every 25 sec
PersistentKeepalive = 25

Speichere die Datei und beende den Editor, wenn du fertig bist.

Im Abschnitt „[Schnittstelle]“ musst du Folgendes festlegen:

  • Die IP-Adresse des Clients muss mit dem Subnetz des Wireguard-Servers übereinstimmen. In diesem Beispiel erhält der Wireguard-Client die IP-Adresse ‚10.8.0.8‘.
  • Gib den DNS-Server für den Client über den Befehl resolvectl an.
  • Ändere den Parameter‚PrivateKey‚ mit dem privaten Schlüssel des Clients, den dumit ‚client1.key‚ erzeugt hast.

Im Abschnitt ‚[Peer]‚ musst du Folgendes hinzufügen:

  • Den öffentlichen Schlüssel des Wireguard-Servers’server.pub‚ zum Parameter ‚PublicKey‘.
  • Gib‚AllowedIPs‚ an, um den Zugriff auf den VPN-Peer zu beschränken. Du kannst Subnetze von Netzwerken angeben oder einfach 0.0.0.0/0, um den gesamten Datenverkehr über VPN zu tunneln.
  • Im Parameter Endpunkt gibst du die öffentliche IP-Adresse des Wireguard-Servers an oder du kannst auch einen Domänennamen verwenden.

Nachdem du die wireguard-Client-Konfigurationsdatei erstellt hast, kannst du wireguard auf dem Client-Rechner mit dem Befehl„wg-quick up“ starten.

wg-quick up wg-client1

Du erhältst eine ähnliche Ausgabe wie diese – Die neue Wireguard-Schnittstelle„wg-client1“ wird erstellt und erhält eine IP-Adresse„10.8.0.8„.

wireguard client starten

Überprüfe nun die ‚wg-client1Schnittstelle mit dem folgenden ip-Befehl.

ip a show wg-client1

Unten siehst du eine ähnliche Ausgabe, die auf deinem Terminal ausgegeben wird.

wg client überprüfen

Du kannst auch den DNS-Resolver auf der wg-client1-Schnittstelle mit dem Befehl„resolvectl“ überprüfen.

resolvectl status wg-client1

Unten siehst du die Ausgabe, die du auf deinem Terminal erhältst – Die wireguard-Schnittstelle wg-client1 verwendet einen DNS-Resolver, der über den Parameter„PostUp“ definiert ist und„systemd-resolved“ verwendet.

Resolver verifizieren

Außerdem kannst du die Wireguard-Verbindung auch mit dem Befehl„wg show“ überprüfen.

Wenn du den Befehl„wg show“ auf dem Wireguard-Clientrechner ausführst, erhältst du eine Ausgabe wie im folgenden Screenshot.

wg show

Die IP-Adresse des Wireguard-Servers sollte im Abschnitt„Endpunkt“ angezeigt werden. Außerdem kannst du den öffentlichen Schlüssel des Wireguard-Servers„server.pub“ sehen.

wge show client

Gehe zurück zum wireguard-Server und führe den Befehl „wg show“ aus.

wg show

Im Abschnitt “ Endpunkt“ siehst du die öffentliche IP-Adresse des Clients und im Abschnitt „Gegenstelle“ den öffentlichen Schlüssel des Clients„client1.pub„.

wg show server

Führe abschließend den folgenden Befehl aus, um sicherzustellen, dass der Client-Rechner auf das Internet oder das interne Netzwerk-Subnetz des Wireguard VPN zugreifen kann.

ping -c5 10.8.0.1
ping -c5 1.1.1.1
ping -c5 duckduckgo.com

Nachfolgend siehst du die Ausgabe, die du erhalten solltest:

Der Client-Rechner kann sich mit dem Wireguard-Server verbinden, der die IP-Adresse„10.8.0.1“ hat.

Ping des Wireguard-Servers verifizieren

Der Client-Rechner kann auf das Internet zugreifen. Der gesamte Datenverkehr wird über die öffentliche IP-Adresse des Wireguard-Servers geleitet.

ping internet verifizieren

Jetzt hast du das Wireguard VPN auf dem Client-Rechner konfiguriert. Außerdem hast du die Verbindung zwischen dem Client-Rechner und dem Wireguard-Server überprüft.

Fazit

In dieser Anleitung hast du den wireguard VPN-Server auf Rocky Linux 9 installiert und konfiguriert. Du hast auch gelernt, wie du den Rocky Linux-Clientrechner für die Verbindung mit dem wireguard-Server einrichtest. Außerdem hast du gelernt, wie du die Portweiterleitung aktivierst und NAT über Firewalld einrichtest.

Schließlich hast du gelernt, wie du mit dem Befehl „wg“ öffentliche und private Schlüsselpaare erzeugst und wireguard VPN-Verbindungen überprüfst. Außerdem hast du gelernt, wie du mit dem Befehl „wg-quick“ die Wireguard-Verbindung starten und beenden kannst.

Wenn du mehr über WireGuard erfahren möchtest, besuche die WireGuard-Dokumentation. Du kannst auch die GitHub-Themen zu Wireguard besuchen, um die Automatisierungsbereitstellung für WireGuard VPN Server zu finden.

Das könnte dich auch interessieren …