{"id":5570,"date":"2026-03-03T17:17:00","date_gmt":"2026-03-03T16:17:00","guid":{"rendered":"https:\/\/www.howto-do.it\/de\/?p=5570"},"modified":"2026-03-03T18:17:14","modified_gmt":"2026-03-03T17:17:14","slug":"wireguard-vpn-einrichten-2026","status":"publish","type":"post","link":"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/","title":{"rendered":"WireGuard VPN einrichten: Sichere Verbindungen f\u00fcr Remote-Teams 2026"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Inhalt<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a3b323cc564c\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a3b323cc564c\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Einleitung_Warum_WireGuard_im_Jahr_2026_OpenVPN_abloest\" >Einleitung: Warum WireGuard im Jahr 2026 OpenVPN abl\u00f6st<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Was_ist_WireGuard_und_welche_Vorteile_bietet_es\" >Was ist WireGuard und welche Vorteile bietet es?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Voraussetzungen_fuer_dieses_Tutorial\" >Voraussetzungen f\u00fcr dieses Tutorial<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Installation_auf_dem_Server_UbuntuDebian\" >Installation auf dem Server (Ubuntu\/Debian)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Schluesselpaare_generieren\" >Schl\u00fcsselpaare generieren<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Server-Konfiguration_wg0conf\" >Server-Konfiguration (wg0.conf)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Wichtige_Details_zur_Konfiguration\" >Wichtige Details zur Konfiguration:<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#IP-Forwarding_aktivieren\" >IP-Forwarding aktivieren<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Firewall-Regeln_UFW_konfigurieren\" >Firewall-Regeln (UFW) konfigurieren<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Client-Konfiguration_Windows_macOS_Linux_iOS_Android\" >Client-Konfiguration (Windows, macOS, Linux, iOS, Android)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Split-Tunneling_vs_Full-Tunneling\" >Split-Tunneling vs. Full-Tunneling<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#QR-Code_fuer_Mobile_Clients\" >QR-Code f\u00fcr Mobile Clients<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Mehrere_Clients_verwalten\" >Mehrere Clients verwalten<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Troubleshooting_Wenn_es_mal_nicht_auf_Anhieb_klappt\" >Troubleshooting: Wenn es mal nicht auf Anhieb klappt<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#1_Der_Client_verbindet_sich_aber_hat_kein_Internet\" >1. Der Client verbindet sich, aber hat kein Internet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#2_Handshake_schlaegt_fehl_Rx_0_B_Tx_X_B\" >2. Handshake schl\u00e4gt fehl (Rx: 0 B, Tx: X B)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#3_DNS-Leaks_oder_interne_Domains_nicht_erreichbar\" >3. DNS-Leaks oder interne Domains nicht erreichbar<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.howto-do.it\/de\/wireguard-vpn-einrichten-2026\/#Fazit\" >Fazit<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Einleitung_Warum_WireGuard_im_Jahr_2026_OpenVPN_abloest\"><\/span>Einleitung: Warum WireGuard im Jahr 2026 OpenVPN abl\u00f6st<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Die Arbeitswelt hat sich drastisch gewandelt, und im Jahr 2026 ist Remote-Work nicht mehr nur ein Trend, sondern der absolute Standard f\u00fcr moderne Unternehmen. Wenn du f\u00fcr dein Team ein WireGuard VPN einrichten m\u00f6chtest, triffst du genau die richtige Entscheidung f\u00fcr maximale Sicherheit, herausragende Performance und einfache Wartung. Jahrelang galt OpenVPN als der unangefochtene Platzhirsch in der Welt der virtuellen privaten Netzwerke. Doch wer heute noch auf veraltete, schwerf\u00e4llige Protokolle setzt, verschenkt wertvolle Ressourcen und nervt seine Mitarbeiter mit langsamen Verbindungsaufbauten und Verbindungsabbr\u00fcchen beim Wechsel zwischen WLAN und Mobilfunknetz.<\/p>\n<p>WireGuard hat die VPN-Landschaft revolutioniert. Es wurde direkt in den Linux-Kernel integriert und bietet eine kryptografische Architektur, die modernsten Standards entspricht. Anstatt sich durch zehntausende Zeilen Code w\u00fchlen zu m\u00fcssen, besteht WireGuard aus nur etwa 4.000 Zeilen. Das bedeutet: weniger Angriffsfl\u00e4che f\u00fcr Hacker, einfacheres Auditing durch Sicherheitsexperten und eine rasante Geschwindigkeit, die selbst bei Gigabit-Verbindungen kaum Overhead erzeugt. In diesem ultimativen Guide zeige ich dir Schritt f\u00fcr Schritt, wie du einen hochsicheren VPN-Server f\u00fcr dein Remote-Team aufsetzt.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Was_ist_WireGuard_und_welche_Vorteile_bietet_es\"><\/span>Was ist WireGuard und welche Vorteile bietet es?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Bevor wir in die Kommandozeile abtauchen, ist es wichtig zu verstehen, warum WireGuard technisch so \u00fcberlegen ist. WireGuard ist ein Layer-3-VPN-Protokoll, das auf das Konzept des &#8220;Cryptokey Routing&#8221; setzt. Das bedeutet, dass die Identifikation und Autorisierung der Clients ausschlie\u00dflich \u00fcber kryptografische Schl\u00fcsselpaare (Public und Private Keys) erfolgt \u2013 ganz \u00e4hnlich, wie du es vielleicht schon von SSH-Verbindungen (Secure Shell) kennst.<\/p>\n<p>Die wichtigsten Vorteile im \u00dcberblick:<\/p>\n<ul>\n<li><strong>Rasante Geschwindigkeit:<\/strong> Durch die Nutzung moderner Kryptografie (ChaCha20 f\u00fcr symmetrische Verschl\u00fcsselung, Poly1305 f\u00fcr Authentifizierung und Curve25519 f\u00fcr den Schl\u00fcsselaustausch) arbeitet WireGuard extrem effizient. Es lastet die CPU des Servers deutlich weniger aus als IPsec oder OpenVPN.<\/li>\n<li><strong>Nahtloses Roaming:<\/strong> Wenn ein Mitarbeiter mit seinem Smartphone vom heimischen WLAN in das 5G-Netz wechselt, bricht die WireGuard-Verbindung nicht ab. Das Protokoll merkt sich den Endpunkt und leitet den Traffic nahtlos \u00fcber die neue IP-Adresse weiter.<\/li>\n<li><strong>Stealth-Modus:<\/strong> WireGuard antwortet nicht auf unauthentifizierte Pakete. Wenn ein Angreifer deinen VPN-Port scannt, erh\u00e4lt er keine Antwort. Der Server verh\u00e4lt sich so, als w\u00e4re der Port geschlossen, es sei denn, das Paket enth\u00e4lt den korrekten kryptografischen Nachweis.<\/li>\n<li><strong>Einfache Konfiguration:<\/strong> Die Konfigurationsdateien sind kurz, lesbar und verst\u00e4ndlich. Keine komplexen Zertifikatsinfrastrukturen (PKI) mehr, die m\u00fchsam gepflegt werden m\u00fcssen.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Voraussetzungen_fuer_dieses_Tutorial\"><\/span>Voraussetzungen f\u00fcr dieses Tutorial<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Um dieses Setup erfolgreich in die Praxis umzusetzen, ben\u00f6tigst du einige grundlegende Dinge. Stelle sicher, dass du folgende Voraussetzungen erf\u00fcllst, bevor du beginnst:<\/p>\n<ul>\n<li><strong>Einen Linux-Server:<\/strong> In diesem Guide verwenden wir Ubuntu 24.04 LTS oder Debian 12\/13. Ein kleiner VPS (Virtual Private Server) bei Anbietern wie Hetzner, DigitalOcean oder Linode mit 1 vCPU und 1 GB RAM reicht f\u00fcr kleine bis mittlere Teams v\u00f6llig aus.<\/li>\n<li><strong>Eine statische \u00f6ffentliche IP-Adresse:<\/strong> Dein Server muss aus dem Internet unter einer festen IPv4 (und optional IPv6) Adresse erreichbar sein.<\/li>\n<li><strong>Root- oder Sudo-Rechte:<\/strong> Du ben\u00f6tigst administrative Berechtigungen auf dem Server, um Pakete zu installieren und Netzwerkschnittstellen zu konfigurieren.<\/li>\n<li><strong>Grundlegende Linux-Kenntnisse:<\/strong> Du solltest wissen, wie man sich per SSH auf einem Server einloggt und wie man einen Texteditor (wie Nano oder Vim) bedient.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Installation_auf_dem_Server_UbuntuDebian\"><\/span>Installation auf dem Server (Ubuntu\/Debian)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Bevor wir das eigentliche WireGuard VPN einrichten, m\u00fcssen wir das Betriebssystem unseres Servers auf den neuesten Stand bringen und die notwendigen Softwarepakete installieren. Logge dich per SSH auf deinem Server ein und f\u00fchre zun\u00e4chst ein Update der Paketquellen durch.<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">sudo apt update &amp;&amp; sudo apt upgrade -y<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Sobald das System aktualisiert ist, k\u00f6nnen wir WireGuard installieren. Da WireGuard mittlerweile fester Bestandteil des Linux-Kernels ist, m\u00fcssen wir keine externen Repositories mehr hinzuf\u00fcgen. Wir installieren lediglich die User-Space-Tools, die wir f\u00fcr die Konfiguration ben\u00f6tigen.<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">sudo apt install wireguard wireguard-tools -y<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Zus\u00e4tzlich empfehle ich die Installation von<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">qrencode<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>. Dieses kleine, aber feine Tool wird uns sp\u00e4ter enorm viel Zeit sparen, wenn wir mobile Endger\u00e4te wie Smartphones oder Tablets mit dem VPN verbinden wollen, da es Konfigurationsdateien direkt im Terminal als scannbaren QR-Code ausgeben kann.<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">sudo apt install qrencode iptables -y<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Schluesselpaare_generieren\"><\/span>Schl\u00fcsselpaare generieren<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Das Herzst\u00fcck der WireGuard-Sicherheit ist das Public-Key-Verfahren. Jeder Teilnehmer im Netzwerk (sowohl der Server als auch jeder einzelne Client) ben\u00f6tigt ein eigenes Paar aus einem privaten Schl\u00fcssel (Private Key) und einem \u00f6ffentlichen Schl\u00fcssel (Public Key). Der private Schl\u00fcssel darf den jeweiligen Rechner niemals verlassen, w\u00e4hrend der \u00f6ffentliche Schl\u00fcssel dem Gegenpart mitgeteilt wird.<\/p>\n<p>Wir wechseln zun\u00e4chst in das WireGuard-Verzeichnis und setzen restriktive Berechtigungen, damit andere Benutzer auf dem Server unsere Schl\u00fcssel nicht auslesen k\u00f6nnen.<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/><\/div><\/td><td><div class=\"text codecolorer\">sudo su<br \/>\ncd \/etc\/wireguard<br \/>\numask 077<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Nun generieren wir das Schl\u00fcsselpaar f\u00fcr den Server:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg genkey | tee server_private.key | wg pubkey &gt; server_public.key<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Dieser Befehl f\u00fchrt zwei Dinge gleichzeitig aus: Er erstellt den privaten Schl\u00fcssel, speichert ihn in der Datei<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">server_private.key<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>und leitet ihn direkt an den Befehl<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg pubkey<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>weiter, der daraus den passenden \u00f6ffentlichen Schl\u00fcssel berechnet und in<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">server_public.key<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>speichert.<\/p>\n<p>Du kannst dir die Schl\u00fcssel mit dem<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">cat<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>-Befehl ansehen. Kopiere dir beide Schl\u00fcssel in ein tempor\u00e4res, lokales Textdokument auf deinem Rechner, da wir sie im n\u00e4chsten Schritt f\u00fcr die Konfigurationsdatei ben\u00f6tigen.<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/><\/div><\/td><td><div class=\"text codecolorer\">cat server_private.key<br \/>\ncat server_public.key<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Server-Konfiguration_wg0conf\"><\/span>Server-Konfiguration (wg0.conf)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Nun erstellen wir die eigentliche Konfigurationsdatei f\u00fcr unsere VPN-Schnittstelle. Typischerweise wird das erste WireGuard-Interface<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>genannt. \u00d6ffne die Datei mit dem Texteditor Nano:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">nano \/etc\/wireguard\/wg0.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>F\u00fcge den folgenden Block in die Datei ein. Dieser Block definiert die Serverseite (das Interface). Ersetze<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">DEIN_SERVER_PRIVATE_KEY<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>durch den Inhalt der Datei<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">server_private.key<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>, die wir gerade erstellt haben.<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/><\/div><\/td><td><div class=\"text codecolorer\">[Interface]<br \/>\n# Die interne IP-Adresse des VPN-Servers innerhalb des VPN-Netzwerks<br \/>\nAddress = 10.8.0.1\/24<br \/>\n<br \/>\n# Der Port, auf dem der Server auf eingehende Verbindungen lauscht<br \/>\nListenPort = 51820<br \/>\n<br \/>\n# Der private Schl\u00fcssel des Servers<br \/>\nPrivateKey = DEIN_SERVER_PRIVATE_KEY<br \/>\n<br \/>\n# Routing- und NAT-Regeln beim Starten des Interfaces<br \/>\nPostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE<br \/>\n<br \/>\n# Entfernen der Regeln beim Stoppen des Interfaces<br \/>\nPostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Wichtige_Details_zur_Konfiguration\"><\/span>Wichtige Details zur Konfiguration:<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><strong>Address:<\/strong> Dies ist das Subnetz f\u00fcr dein VPN.\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">10.8.0.1<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>ist der Server selbst. Die Clients bekommen sp\u00e4ter IPs wie<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">10.8.0.2<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>,<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">10.8.0.3<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>usw.<\/li>\n<li><strong>ListenPort:<\/strong> Der Standard-UDP-Port f\u00fcr WireGuard ist 51820. Du kannst ihn \u00e4ndern, um automatisierten Scans aus dem Weg zu gehen, aber f\u00fcr dieses Tutorial belassen wir es beim Standard.<\/li>\n<li><strong>PostUp \/ PostDown:<\/strong> Diese iptables-Regeln sind essenziell. Sie sorgen daf\u00fcr, dass der Traffic, der aus dem VPN (wg0) kommt, \u00fcber die prim\u00e4re Netzwerkschnittstelle des Servers (hier\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">eth0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>) in das \u00f6ffentliche Internet weitergeleitet wird (NAT\/Masquerading). <em>Achtung:<\/em> Pr\u00fcfe mit dem Befehl<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">ip a<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>, ob deine prim\u00e4re Schnittstelle wirklich<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">eth0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>hei\u00dft. Bei vielen modernen Systemen hei\u00dft sie oft<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">ens3<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>oder<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">enp3s0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>. Passe den Namen in der Config entsprechend an!<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"IP-Forwarding_aktivieren\"><\/span>IP-Forwarding aktivieren<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Damit der Server Pakete zwischen dem VPN-Interface und dem Internet routen kann, m\u00fcssen wir das IPv4-Forwarding im Linux-Kernel aktivieren. \u00d6ffne dazu die Datei<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">\/etc\/sysctl.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">nano \/etc\/sysctl.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Suche nach der Zeile<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">#net.ipv4.ip_forward=1<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>und entferne das Rautezeichen (<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">#<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>), um sie zu entkommentieren. Speichere die Datei und \u00fcbernimm die \u00c4nderungen sofort mit folgendem Befehl:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">sysctl -p<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Firewall-Regeln_UFW_konfigurieren\"><\/span>Firewall-Regeln (UFW) konfigurieren<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Sicherheit geht vor. Dein Server sollte durch eine Firewall gesch\u00fctzt sein. In Ubuntu ist UFW (Uncomplicated Firewall) das Standard-Tool. Wir m\u00fcssen sicherstellen, dass wir uns nicht selbst aussperren (SSH erlauben) und dass der WireGuard-Port erreichbar ist.<\/p>\n<p>F\u00fchre folgende Befehle aus:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/><\/div><\/td><td><div class=\"text codecolorer\"># Erlaube SSH-Verbindungen (sehr wichtig!)<br \/>\nufw allow 22\/tcp<br \/>\n<br \/>\n# Erlaube den WireGuard UDP-Port<br \/>\nufw allow 51820\/udp<br \/>\n<br \/>\n# Aktiviere die Firewall<br \/>\nufw enable<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>WireGuard nutzt ausschlie\u00dflich UDP. Das ist ein gro\u00dfer Vorteil gegen\u00fcber TCP-basierten VPNs, da bei verschachtelten TCP-Verbindungen (TCP over TCP) das sogenannte &#8220;Head-of-Line Blocking&#8221; auftreten kann, was zu massiven Leistungseinbr\u00fcchen f\u00fchrt. UDP ist zustandslos und perfekt f\u00fcr Echtzeit-Traffic geeignet.<\/p>\n<p>Nun k\u00f6nnen wir das WireGuard-Interface starten und es so einrichten, dass es bei jedem Server-Neustart automatisch hochf\u00e4hrt:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/><\/div><\/td><td><div class=\"text codecolorer\">systemctl enable wg-quick@wg0.service<br \/>\nsystemctl start wg-quick@wg0.service<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>\u00dcberpr\u00fcfe den Status mit<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg show<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>. Du solltest nun das Interface<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>mit dem zugeh\u00f6rigen Public Key und dem Listen Port sehen.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Client-Konfiguration_Windows_macOS_Linux_iOS_Android\"><\/span>Client-Konfiguration (Windows, macOS, Linux, iOS, Android)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Wenn wir f\u00fcr unsere Remote-Mitarbeiter ein WireGuard VPN einrichten, ist die Flexibilit\u00e4t bei den Endger\u00e4ten ein entscheidender Faktor. Egal ob der Entwickler auf Linux arbeitet, das Management macOS nutzt oder der Vertrieb mit iPads unterwegs ist \u2013 WireGuard bietet f\u00fcr alle Plattformen exzellente, native Clients.<\/p>\n<p>Wir m\u00fcssen f\u00fcr unseren ersten Client (z.B. ein Windows-Laptop) ein neues Schl\u00fcsselpaar generieren. Bleibe auf dem Server im Verzeichnis<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">\/etc\/wireguard\/<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>und f\u00fchre aus:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg genkey | tee client1_private.key | wg pubkey &gt; client1_public.key<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Nun erstellen wir die Konfigurationsdatei f\u00fcr den Client. Diese Datei geben wir sp\u00e4ter an den Mitarbeiter weiter. Erstelle die Datei<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">client1.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">nano client1.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>F\u00fclle sie mit folgendem Inhalt:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;height:300px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/>16<br \/>17<br \/>18<br \/>19<br \/>20<br \/>21<br \/>22<br \/><\/div><\/td><td><div class=\"text codecolorer\">[Interface]<br \/>\n# Der private Schl\u00fcssel des Clients<br \/>\nPrivateKey = DEIN_CLIENT1_PRIVATE_KEY<br \/>\n<br \/>\n# Die IP-Adresse, die dieser Client im VPN erh\u00e4lt<br \/>\nAddress = 10.8.0.2\/32<br \/>\n<br \/>\n# DNS-Server f\u00fcr den Client (z.B. Cloudflare)<br \/>\nDNS = 1.1.1.1, 1.0.0.1<br \/>\n<br \/>\n[Peer]<br \/>\n# Der \u00f6ffentliche Schl\u00fcssel des SERVERS<br \/>\nPublicKey = DEIN_SERVER_PUBLIC_KEY<br \/>\n<br \/>\n# Die \u00f6ffentliche IP-Adresse deines Servers und der WireGuard-Port<br \/>\nEndpoint = DEINE_SERVER_IP:51820<br \/>\n<br \/>\n# Welche IPs durch das VPN geroutet werden sollen<br \/>\nAllowedIPs = 0.0.0.0\/0, ::\/0<br \/>\n<br \/>\n# H\u00e4lt die Verbindung bei NAT\/Firewalls aufrecht (Ping alle 25 Sekunden)<br \/>\nPersistentKeepalive = 25<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Split-Tunneling_vs_Full-Tunneling\"><\/span>Split-Tunneling vs. Full-Tunneling<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>In der obigen Konfiguration steht<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">AllowedIPs = 0.0.0.0\/0, ::\/0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>. Das bedeutet &#8220;Full-Tunneling&#8221;: Der gesamte Internetverkehr des Clients wird durch das VPN geleitet. Dies ist ideal f\u00fcr maximale Sicherheit in \u00f6ffentlichen WLAN-Hotspots. M\u00f6chtest du stattdessen &#8220;Split-Tunneling&#8221;, bei dem nur der Traffic zum Firmennetzwerk (z.B.<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">10.8.0.0\/24<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>) durch das VPN geht und normales Surfen \u00fcber die lokale Verbindung l\u00e4uft, \u00e4nderst du diesen Wert einfach in<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">AllowedIPs = 10.8.0.0\/24<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>.<\/p>\n<p>Lade dir nun den offiziellen WireGuard-Client f\u00fcr dein Betriebssystem (Windows, macOS) von der offiziellen Website herunter, importiere diese<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">client1.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>Datei per Drag-and-Drop und klicke auf &#8220;Verbinden&#8221;.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"QR-Code_fuer_Mobile_Clients\"><\/span>QR-Code f\u00fcr Mobile Clients<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>F\u00fcr Smartphones und Tablets ist das Abtippen oder \u00dcbertragen von Konfigurationsdateien extrem l\u00e4stig. Hier kommt das zuvor installierte Tool<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">qrencode<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>ins Spiel. Es verwandelt unsere<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">client1.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>in einen QR-Code, den du einfach mit der WireGuard-App auf iOS oder Android scannen kannst.<\/p>\n<p>F\u00fchre auf dem Server folgenden Befehl aus:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">qrencode -t ansiutf8 &lt; client1.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Der QR-Code wird direkt in deinem Terminal gezeichnet. \u00d6ffne die WireGuard-App auf deinem Handy, tippe auf das Plus-Symbol, w\u00e4hle &#8220;Aus QR-Code scannen&#8221;, richte die Kamera auf deinen Bildschirm, vergib einen Namen (z.B. &#8220;Firmen-VPN&#8221;) und schon bist du sicher verbunden. Einfacher geht es nicht!<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Mehrere_Clients_verwalten\"><\/span>Mehrere Clients verwalten<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Ein Remote-Team besteht selten aus nur einer Person. Um weitere Clients hinzuzuf\u00fcgen, musst du das Prinzip lediglich wiederholen. Jeder Client ben\u00f6tigt:<\/p>\n<ol>\n<li>Ein <strong>eigenes, einzigartiges Schl\u00fcsselpaar<\/strong>.<\/li>\n<li>Eine <strong>eindeutige IP-Adresse<\/strong> innerhalb des VPN-Subnetzes (z.B.\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">10.8.0.3\/32<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>f\u00fcr Client 2,<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">10.8.0.4\/32<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>f\u00fcr Client 3).<\/li>\n<\/ol>\n<p>Dem Server musst du ebenfalls mitteilen, dass es neue Clients gibt. Dazu \u00f6ffnest du wieder die Server-Konfiguration:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">nano \/etc\/wireguard\/wg0.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>F\u00fcge am Ende der Datei f\u00fcr jeden Client einen neuen<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">[Peer]<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>-Block hinzu:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/><\/div><\/td><td><div class=\"text codecolorer\"># Client 1<br \/>\n[Peer]<br \/>\nPublicKey = CLIENT1_PUBLIC_KEY<br \/>\nAllowedIPs = 10.8.0.2\/32<br \/>\n<br \/>\n# Client 2<br \/>\n[Peer]<br \/>\nPublicKey = CLIENT2_PUBLIC_KEY<br \/>\nAllowedIPs = 10.8.0.3\/32<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Damit der Server die neuen Einstellungen ohne Unterbrechung der bestehenden Verbindungen \u00fcbernimmt, nutzt du folgenden Befehl:<\/p>\n<pre>\n\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg addconf wg0 &lt;(wg-quick strip wg0)<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n\n<\/pre>\n<p>Alternativ kannst du das Interface auch mit<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">systemctl restart wg-quick@wg0.service<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>neu starten, was jedoch alle aktuell verbundenen Clients f\u00fcr einen kurzen Moment trennt.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Troubleshooting_Wenn_es_mal_nicht_auf_Anhieb_klappt\"><\/span>Troubleshooting: Wenn es mal nicht auf Anhieb klappt<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Selbst wenn Profis ein WireGuard VPN einrichten, k\u00f6nnen gelegentlich kleine Fehler auftreten. Da WireGuard &#8220;still&#8221; (stealth) arbeitet, bekommst du bei einem Fehler oft keine direkte Fehlermeldung, sondern die Verbindung kommt einfach nicht zustande. Hier sind die h\u00e4ufigsten Fehlerquellen und deren L\u00f6sungen:<\/p>\n<h3><span class=\"ez-toc-section\" id=\"1_Der_Client_verbindet_sich_aber_hat_kein_Internet\"><\/span>1. Der Client verbindet sich, aber hat kein Internet<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Dies ist der absolute Klassiker. Der Handshake war erfolgreich, aber es flie\u00dfen keine Daten. Die Ursachen hierf\u00fcr liegen fast immer im Routing auf dem Server:<\/p>\n<ul>\n<li><strong>IP-Forwarding vergessen:<\/strong> \u00dcberpr\u00fcfe mit\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">cat \/proc\/sys\/net\/ipv4\/ip_forward<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>, ob eine<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">1<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>ausgegeben wird. Wenn dort eine<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>steht, hast du das Forwarding nicht korrekt aktiviert.<\/li>\n<li><strong>Falsches Interface in den iptables-Regeln:<\/strong> Hast du in der\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">wg0.conf<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>bei den<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">PostUp<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>\/<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">PostDown<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>Regeln<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">eth0<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>stehen, obwohl deine Netzwerkkarte<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">ens18<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>oder<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">eth1<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>hei\u00dft? Korrigiere den Namen und starte das Interface neu.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"2_Handshake_schlaegt_fehl_Rx_0_B_Tx_X_B\"><\/span>2. Handshake schl\u00e4gt fehl (Rx: 0 B, Tx: X B)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Wenn du im Client-Status siehst, dass Daten gesendet (Tx), aber keine empfangen (Rx) werden, blockiert eine Firewall den Traffic oder die Schl\u00fcssel stimmen nicht \u00fcberein.<\/p>\n<ul>\n<li>Pr\u00fcfe, ob die UFW-Firewall auf dem Server den UDP-Port 51820 wirklich durchl\u00e4sst (\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">sudo ufw status<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>).<\/li>\n<li>Kontrolliere, ob die \u00f6ffentliche IP-Adresse in der Client-Konfiguration bei\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">Endpoint<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>absolut korrekt ist.<\/li>\n<li>Stelle sicher, dass du die Public Keys nicht vertauscht hast. Der Server braucht den Public Key des Clients, und der Client braucht den Public Key des Servers.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"3_DNS-Leaks_oder_interne_Domains_nicht_erreichbar\"><\/span>3. DNS-Leaks oder interne Domains nicht erreichbar<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Wenn du zwar im Internet surfen kannst, aber interne Firmen-Domains (wie<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">intranet.local<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>) nicht aufgel\u00f6st werden, liegt ein DNS-Problem vor. Stelle sicher, dass in der Client-Konfiguration unter<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">DNS = ...<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>die IP-Adresse deines internen DNS-Servers eingetragen ist. Wenn du keinen eigenen DNS-Server betreibst, nutze sichere \u00f6ffentliche Resolver wie<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">1.1.1.1<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>(Cloudflare) oder<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">9.9.9.9<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>(Quad9).<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Fazit\"><\/span>Fazit<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Herzlichen Gl\u00fcckwunsch! Du hast erfolgreich einen hochmodernen, sicheren und extrem schnellen VPN-Server aufgesetzt. Die Entscheidung, von alten Protokollen abzur\u00fccken und auf moderne Kryptografie zu setzen, zahlt sich durch geringeren Wartungsaufwand, l\u00e4ngere Akkulaufzeiten bei mobilen Endger\u00e4ten und zufriedenere Mitarbeiter aus.<\/p>\n<p>WireGuard ist nicht ohne Grund der neue Goldstandard in der Netzwerksicherheit. Das Hinzuf\u00fcgen neuer Teammitglieder ist durch das Generieren eines simplen Schl\u00fcsselpaares und eines QR-Codes in wenigen Sekunden erledigt. Denk daran, deinen Server regelm\u00e4\u00dfig mit Updates (<\/p>\n<div class=\"codecolorer-container text default\" style=\"overflow:auto;white-space:nowrap;width:435px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/><\/div><\/td><td><div class=\"text codecolorer\">apt update &amp;&amp; apt upgrade<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>) zu versorgen, um das zugrundeliegende Betriebssystem abzusichern. Mit diesem Setup ist dein Remote-Team f\u00fcr das Jahr 2026 und weit dar\u00fcber hinaus bestens ger\u00fcstet.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eine umfassende Anleitung f\u00fcr 2026, wie man WireGuard VPN einrichten kann, um schnelle und sichere Remote-Verbindungen aufzubauen.<\/p>\n","protected":false},"author":20,"featured_media":5569,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","rank_math_title":"WireGuard VPN einrichten: Sichere Verbindungen f\u00fcr Remote-Teams 2026","rank_math_description":"Eine umfassende Anleitung f\u00fcr 2026, wie man WireGuard VPN einrichten kann, um schnelle und sichere Remote-Verbindungen aufzubauen.","rank_math_focus_keyword":"WireGuard VPN einrichten","footnotes":""},"categories":[45,48],"tags":[],"class_list":["post-5570","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","category-sicherheit"],"_links":{"self":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/posts\/5570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/comments?post=5570"}],"version-history":[{"count":1,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/posts\/5570\/revisions"}],"predecessor-version":[{"id":5571,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/posts\/5570\/revisions\/5571"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/media\/5569"}],"wp:attachment":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/media?parent=5570"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/categories?post=5570"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/tags?post=5570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}