Dieser Artikel beschreibt detailliert, wie Sie Wireguard VPN auf Ihrem Server einrichten. Es kann sich um einen virtuellen oder privaten Server handeln – das spielt keine große Rolle.
Diese VPN Wireguard-Einrichtungsanleitung ist für Benutzer ohne viel Erfahrung gedacht, daher werden alle Schritte sehr detailliert beschrieben und durch Screenshots ergänzt.
Der über unseren Tunnel fließende Datenverkehr wird verschlüsselt und im Internet wird die IP-Adresse unseres VPN-Servers angezeigt, nicht die Adresse des Anbieters, über den wir auf das Netzwerk zugreifen.
Es wird vorausgesetzt, dass Sie bereits einen VPS haben. Wenn nicht, können Sie Auftrag es von uns.
Wir installieren das Betriebssystem Ubuntu 22.04 auf unserem Server. Wenn Sie einen Server mit einem anderen Betriebssystem haben, können Sie es einfach neu installieren, indem Sie Arbeitsanleitung.
Der Server mit Ubuntu 22.04 ist bereit, jetzt verbinden wir uns per SSH. Falls Sie dieses Protokoll noch nie zuvor gesehen haben, hilft Ihnen ein Artikel, der diesen Prozess detailliert beschreibt. Der zweite Absatz des Artikel ist für das Linux-Betriebssystem, das dritte ist für das Windows-Betriebssystem.
Wireguard-Server einrichten
Nach einer erfolgreichen Verbindung werde ich einige Befehle und eine Beschreibung ihrer Ergebnisse aufschreiben, um den Vorgang zu verstehen:
Wir aktualisieren die Liste der Pakete in den Repositories
apt update
Erneuerung der Pakete selbst
apt upgrade -y
Installieren Sie das Wireguard-Paket
apt install -y wireguard
Unsere Konfiguration wird im Verzeichnis /etc/wireguard/ gespeichert, wir müssen das Verzeichnis eingeben:
cd /etc/wireguard/
Wir benötigen einen öffentlichen und einen privaten Schlüssel für unseren Server. Diese generieren wir, nachdem wir beim Anlegen von Dateien und Verzeichnissen die entsprechenden Rechte vergeben haben. Dazu verwenden wir folgende Befehle:
umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickey
Nun legen wir die Rechte für den privaten Schlüssel fest:
chmod 600 privatekey
Bevor wir die Konfigurationsdatei erstellen, benötigen wir den Namen unserer Netzwerkschnittstelle. Um ihn herauszufinden, verwenden Sie den folgenden Befehl:
ip a
Wir benötigen die Schnittstelle mit der IP-Adresse, die für die aktuelle Verbindung verwendet wird. In Ihrem Fall wird sie wahrscheinlich ens3 heißen, es kann aber auch einen anderen Namen geben.
Wir benötigen außerdem einen öffentlichen und einen privaten Schlüssel. Um diese anzuzeigen, verwende ich tail
tail privatekey publickey
Es sieht so aus:
Zur Bearbeitung können Sie beliebige Linux-TexteditorIch verwende nano. Zur Installation führen Sie den folgenden Befehl aus:
apt install -y nano
Wir bearbeiten die Konfigurationsdatei:
nano /etc/wireguard/wg0.conf
Hinweis
Um die Datei zu speichern, verwenden wir die Tastenkombination Strg+O
zum Beenden - Strg+X
Es sollte so aussehen:
[Interface]
PrivateKey = [ your private key ]
Address = 10.30.0.1/24
ListenPort = 51928
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o [ interface name ] -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o [ interface name ] -j MASQUERADE
Bei mir sieht es so aus
Wir schalten die IP-Weiterleitung ein
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
Starten Sie den Wireguard-Dienst:
systemctl start [email protected]
Wenn der Dienst nach dem Neustart des Servers gestartet werden soll, gehen wir wie folgt vor:
systemctl enable [email protected]
So zeigen Sie den Servicestatus an:
systemctl status [email protected]
Der Status sollte wie im Screenshot aktiv sein:
Wenn Sie unsere Anweisungen sorgfältig befolgt haben, verfügen Sie zu diesem Zeitpunkt über alles, was Sie für den Betrieb des Serverteils von VPN Wireguard benötigen.
Einrichten des Wireguard-Clients
Es bleibt nur noch die Konfiguration des Client-Teils. Der Einfachheit halber werde ich Schlüssel für den Client-Teil auch auf dem Server generieren. Aus Sicherheitsgründen wäre es jedoch korrekter, Schlüssel clientseitig zu generieren. Ich verwende Befehle zur Generierung:
wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickey
Ich werde auch Schlüssel zur Verwendung des VPN auf dem Telefon generieren:
wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey
Es ist zu beachten, dass dies alles im Katalog erfolgen muss.
/etc/wireguard/
Sie können es auch in einem anderen Katalog ausführen. Der Einfachheit halber führen wir die Anweisungen jedoch in /etc/wireguard/ aus.
Wir verwenden den Befehl ls, um die Dateien in einem Verzeichnis aufzulisten. Ich habe es so hinbekommen:
Lassen Sie uns die öffentlichen Schlüssel auf dem Bildschirm anzeigen. Wir benötigen sie, um Knoten zu unserem Netzwerk hinzuzufügen:
tail mypc_publickey myphone_publickey
Bei mir sieht das so aus:
Bearbeiten wir unsere Konfigurationsdatei:
nano wg0.conf
Fügen Sie die folgenden Zeilen hinzu:
[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32
[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32
Jetzt sieht die Konfigurationsdatei folgendermaßen aus:
Speichern Sie die Datei und starten Sie unseren Dienst neu:
systemctl restart wg-quick@wg0
Lassen Sie uns überprüfen, ob alles erfolgreich war:
systemctl status wg-quick@wg0
Der Status muss aktiv sein
Nach jedem Bearbeiten der Serverkonfigurationsdatei (wg0.conf) muss der Dienst neu geladen werden.
Als Nächstes erstellen wir Konfigurationen für Clients (in meinem Fall meinen PC und mein Telefon). Dasselbe mache ich auf dem Server.
nano mypc.conf
[Interface]
PrivateKey = [mypc_privatekey private key]
Address = 10.30.0.2/32
DNS = 8.8.8.8
[Peer]
PublicKey = [publickey server publc key]
Endpoint =[ server ip address]:51928
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 20
Im Feld „Endpunkt“ sehen Sie die IP-Adresse des Servers – die IP-Adresse, die wir für die SSH-Verbindung verwendet haben. Um die Schnittstellen und Adressen anzuzeigen, können Sie den Befehl „ip a“ verwenden.
Wireguard für Mobilgeräte einrichten
Wir erstellen eine ähnliche Konfiguration für unser Telefon. Wir müssen lediglich die Adresse ändern. Für den PC war sie 10.30.0.2/32, und in der Telefonkonfiguration ändern wir sie auf 10.30.0.3/32. Wenn wir VPN auf anderen Geräten nutzen möchten, müssen wir in den Konfigurationsdateien und der Serverkonfigurationsdatei wg0.conf weitere Adressen im Feld „Adresse“ sowie im Feld „AllowedIPs“ hinzufügen.
Die Dateien sehen bei mir so aus:
mypc.conf
myphone.conf
Für die Verbindung installieren wir den Wireguard-Client https://www.wireguard.com/install/
In der Windows-Anwendung fügen wir einen neuen Tunnel hinzu und geben die in der Datei mypc.conf erstellte Konfiguration ein
Wir starten den Tunnel und gehen im Browser zur Website, die unsere Adresse anzeigt
Um Ihrem Telefon bequem ein VPN hinzuzufügen, installieren Sie ein Programm zum Generieren von QR-Codes auf dem Server:
apt install -y qrencode
Führen Sie im Konfigurationsverzeichnis den folgenden Schritt aus:
qrencode -t ansiutf8 -r myphone.conf
Anschließend öffnen wir die Wireguard-App auf unserem Smartphone, drücken +, um einen neuen Tunnel zu erstellen, wählen „QR-Code scannen“, scannen ihn und schalten das VPN ein. Anschließend überprüfen wir, ob die Adresse unseres Servers angezeigt wird, indem wir eine Ressource verwenden, die die Ausgabe-IP-Adresse anzeigt.
Du hast es geschafft!