Merkzettel: VPN Installation mit Wireguard

aqui

back-to-topEinleitung


Home Office und VPNs sowie VPN Standort Vernetzungen sind im Forum oftmals Grund technischer Fragen zum Thema VPN. Insbesondere wenn es um das recht neue Wireguard VPN geht.
Wireguard hat weniger Hürden bei der Schlüsselerstellung und man kommt auch als Laie schnell und unkompliziert zu einem VPN Setup sowohl für den mobilen Client Zugang als auch zur VPN Standort Vernetzung. Auch hier gilt wie im OpenVPN Schwester-Tutorial das mit einem alten ausrangierten PC, einem Raspberry Pi 4 oder einem NAS mit Wireguard App so ein VPN schnell aufgesetzt ist.
Ebenso haben eine Vielzahl von Routern und Firewalls (pfSense, OPNsense) als auch das alternative Router Betriebssystem OpenWRT von sich aus Wireguard schon an Bord und können (und sollten) einen VPN Server im internen LAN ersetzen.
Ob es ein Raspberry Pi, Ubuntu, Windows, Mac OS oder die Router Hardware selber ist, spielt dabei keine Rolle. Analog zu OpenVPN ist der Vorteil das die VPN Server und Client Konfiguration über alle Plattformen und Betriebssysteme hinweg identisch ist.
Die Einfachheit der Schlüsselerstellung und das unkomplizierte Setup in Kombination mit sehr guter VPN Performance ist ein Grund für den rasanten Erfolg von Wireguard.
Zweifelsohne gibt es auch noch andere VPN Protokolle, wie das von der FritzBox benutzte, standartisierte und weit verbreitete IPsec. Desweiteren L2TP und OpenVPN. Alles zu behandeln würde aber den Rahmen dieses kurzen, rein auf Wireguard bezogenen, "Merkzettels" sprengen und es wird auf die weitereren VPN Tutorials hier im Forum verwiesen, die in den weiterführenden Links unten zu finden sind.

Eine Anmerkung vorab:
Netzwerk Admins erkennen das das hier vorgestellte VPN Design mit dem Betrieb des VPN Servers im internen LAN aus Sicherheits Aspekten nicht ideal ist. Der Grund ist das man von außen ungeschützten (VPN) Traffic ins interne, geschützte LAN lassen muss über die Router Firewall.
Ein Sicherheits Nachteil der bei VPN Betrieb direkt auf der Netzwerk Peripherie wie Router oder Firewall nicht besteht. VPN Traffic muss so nicht durch Löcher in der Firewall ins interne, geschützte LAN. Ein VPN in der Peripherie ist also per se sicherer.
Dazu kommt das bei einem sog. "one armed" Server im lokalen LAN aller VPN Datenverkehr über ein gemeinsames Interface zum und vom VPN Server laufen muss, was Performance und Skalierbarkeit einschränkt.
In kleinen und einfachen Netzwerken sind diese VPN fähigen Router oder Firewalls aber oft nicht vorhanden oder es fehlt entsprechendes KnowHow vorhandene Hardware zu ersetzen o. a. Gründe.
Das Tutorial versucht mit den folgenden Installations Tips einen Spagat zwischen beiden Optionen. Grundlage ist wieder, wie schon vom hiesigen OpenVPN_"Merkzettel" bekannt, ein VPN Standard Design:

wireguardneu

Oder als Site to Site Installation:
wg_neu.

Internet Router Einstellungen sind auch hier wieder stellvertretend für andere Router Hardware, anhand einer FritzBox beschrieben. Billige Consumer Router haben aber in Firmennetzen mit VPN Installationen generell nichts zu suchen. Dennoch gelten die anschaulichen Setups der AVM Router hier stellvertretend für ALLE anderen Router Modelle !
Das lokale LAN mit dem Wireguard Server im obigen Beispiel arbeitet mit der IP Netzwerk Adresse 192.168.188.0 /24 und das interne Wireguard Netzwerk mit 100.64.64.0 /24. Der 100.64.0.0 /10 Adress Block wird im Internet nicht geroutet (RFC6598) und sorgt dafür das es nicht zu einer IP Adress Überschneidung mit privaten RFC 1918 IP Adressen kommt.
Noch etwas zum NAT/Masquerading am Server:
Im eigenen, internen LAN ist sowas kontraproduktiv und führt dazu das kein transparentes Routing möglich ist. Einige Anleitungen im Internet gehen häufig von öffentlichen VPNs aus um Geo Location Grenzen (Streaming usw.) zu überwinden. So ein Design führt in einem Standort oder Client VPN wie hier zur Fehlfunktion. Es gilt also: KEIN NAT/Masquerading aktivieren (iptables) !!
Wichtige Tipps zur VPN Adressierung findet man HIER !
Los gehts...!

back-to-topEinstellungen Router bzw. Firewall


Das Tutorial geht von einer klassischen Wireguard Installation aus mit dem Default Port UDP 51820. Hat man das im Setup geändert, muss dies in den Konfig Dateien entsprechend angepasst werden.
Wer aus Sicherheitsgründen nicht den Standard Port verwenden will, sollte aufgrund der weltweit fest genormten Port Zuweisungen durch die IANA immer auf die sog. freien Ephemeral_Ports im Bereich 49152 bis 65535 ausweichen. Diese Ports werden in der Regel von Angreifern wenig bis gar nicht gescannt.
Oft limitieren auch vorgeschaltete Firewalls den Port. Hier kann man dann auf Port 443 (HTTPS) oder 22 (SSH) wechseln.

back-to-topIP Adressierung Wireguard Server


Da in dem obigen Design, mit internem VPN Server, eine feste, statische IP Route im vorhandenen Internet Router auf die lokale Wireguard Server IP Adresse zeigt, ist es sinnvoller dem VPN Server auch immer eine statische und damit verlässliche IP Adresse zu vergeben. Sollte eine dynamische DHCP IP Adresse sich einmal ändern, läuft in so einem Fall die Route ins Leere und das VPN verliert die Verbindung. Etwas, das es zu vermeiden gilt !
Es ist also immer eine gute Idee dem VPN Server eine statische IP Adresse zu vergeben. Er ist gewissermaßen VPN Router und Router bekommen Prinzip bedingt generell statische IP Adressen an ihren Interfaces.
Das kann natürlich manuell am Server selbst im Netzwerk Setup gemacht werden. Einfacher ist es aber über die Hardware MAC Adresse der verwendeten Server Hardware (Netzwerkkarte), dem DHCP Server im Router (z.B. Fritz Box) eine feste IP zuzuweisen.
So kann der Server flexibel im DHCP Betrieb verbleiben (was meist Default in allen OS ist), bekommt aber über diese feste Zuweisung dennoch immer eine feste IP Adresse.
Das Screenshot Beispiel zeigt dies an einem FritzBox DHCP Server:

wg1
wg2

Welche Hardware Adresse (Mac) der Server verwendet verrät auf dem Server das Kommando ipconfig -all (Windows) oder ifconfig (Linux, MacOS).
Wer diese Option der Mac Adress basierten Zuweisung nicht hat, sollte immer eine statische Server IP vergeben die außerhalb des DHCP Adressbereich des Routers liegt !

back-to-topInterne Wireguard IP Adressierung


Der VPN Tunnel selber ist im Wireguard, analog wie bei OpenVPN, ein eigenes IP Netzwerk und wird mit dem Konfig Kommando (Beispiel) Address = 100.64.64.1/24 in der Server Konfigrations Datei bestimmt. Dazu später mehr.
Diese VPN interne IP Adressierung muss, wie immer, einzigartig sein im gesamten VPN Netz und ist deshalb nicht trivial. Auch hier gilt es eine Überschneidung mit den zahllosen Standard privaten_RFC1918_IP_Adressen zu vermeiden die millionenfach auf Consumer Routern verwendet werden. Wie eine vorausschauende VPN Adressierung auszusehen hat wurde schon in anderen VPN Tutorials des Forums hinreichend beschrieben wie z.B. HIER.

back-to-topPort Forwarding oder auch Port Weiterleitung bzw. Freigabe im Router


Damit VPN Clients von außen den internen Wireguard VPN Server überhaupt erreichen können, müssen diese die von außen schützende Firewall des Routers überwinden. Ohne ein entsprechendes Port Forwarding (Port Weiterleitung) würde die Router Firewall solche externen Verbindungen immer sicher blockieren, mit dem Effekt das kein VPN Client den internen VPN Server erreichen kann.
Man "sagt" hier also mit der Port Forwarding Freigabe der Router Firewall das sie doch bitte UDP 51820 auf die interne IP Adresse (hier 192.168.188.254 = Wireguard VPN Server) passieren lassen soll:

wg4
wg5

Diese Einstellung lässt dann am Router Internet Port den eingehenden Wireguard Verkehr mit UDP 51820 (und NUR diesen Verkehr !) auf die interne Wireguard VPN Server IP 192.168.188.254 passieren.
Daraus folgt, dass die VPN Ziel IP, die im Client zu konfigurieren ist immer die WAN Port/Internet IP des Routers sein muss und nicht die lokale LAN IP des VPN Servers !

An diesem Punkt erkennt man auch sofort den oben schon angesprochenen Nachteil einer solchen internen VPN Lösung ! Wäre der VPN Server direkt auf dem Internet Router oder Firewall onboard, müsste man keine dieser "Löcher" in die Firewall bohren und das VPN Konzept wäre in sich sicherer.

back-to-topStatische Route auf internes VPN IP Netz


Der Wireguard VPN Server spannt, wie oben bereits beschrieben, intern ein eigenes IP Netz auf. Damit externe VPN Clients alle Endgeräte des lokalen LANs erreichen können, muss der Internet Router natürlich wissen wie er das interne Wireguard IP Netz erreichen kann. Das übernimmt eine feste, statische Route im Internet Router die allen Traffic für das Wireguard IP Netz (hier 100.64.64.0 /24) dann an den VPN Server (192.168.188.254) sendet
wg3
(siehe dazu auch Netzwerk Skizze oben).

back-to-topWireguard Server und Client Konfiguration


Auch wieder analog zu OpenVPN werden Server und Client mit einer einfachen Text Datei konfiguriert. Bei Windows und anderen grafischen Betriebssystemen ist das in den grafischen Wireguard Client entsprechend eingebunden. Idealerweise erstellt man mit einem Text Editor diese Konfig Datei mit der Endung .conf und kann sie dann ganz einfach über die Import Funktion ins grafische Wireguard Setup importieren.
Für mobile Endgeräte wie Smartphones und Tablets bieten sich QR Code Tools an, die diese Client Konfig als QR Code exportieren und so sehr einfach in diese Geräte per onboard Kamera importiert werden können. Dazu später mehr.
Die folgenden Kapitel erklären die grundlegende Einrichtung von Server und Client.

back-to-topIP Forwarding (Routing) im Wireguard Server aktivieren


Der VPN Server ist gewissermaßen auch ein Router, denn er routet ja immer zwischen dem lokalen LAN und dem internen OpenVPN Tunnel IP Netz (hier im Beispiel 172.17.77.0 /24).
Normalerweise ist aber das Routing (IP Forwarding) auf Servern, egal mit welchem Betriebssystem immer per Default deaktiviert !
Damit der Server nun IP Pakete vom lokalen LAN ins VPN IP Netz und umgekehrt senden kann muss dafür das Routing auf dem OpenVPN Server Rechner im Betriebssystem aktiviert werden.
Bei Windows geschieht das über einen Eingriff in die Registry oder die Dienste Verwaltung.
(IPEnableRouter Parameter auf 1) siehe auch: https://www.edv-lehrgang.de/ip-routing-aktivieren/

winipforw

Unter Linux/Raspberry editiert man mit dem nano Editor die Datei /etc/sysctl.conf und entkommentiert dort den Eintrag:


indem man das "#" vor der Zeile net.ipv4.ip_forward=1 entfernt und somit das IP Forwarding/Routing aktiviert.
Danach sichert man diese Datei und rebootet den Linux Rechner.

back-to-topKonfiguration Wireguard Server


Am Anfang steht immer die Generierung der Schlüssel für den VPN Server und den VPN Client (Peer). Ein Schlüsselpaar besteht immer aus einem öffentlichen Schlüssel den man weitergeben kann und aus einem privaten Schlüssel der entsprechend geschützt werden muss. Die Schlüssel sind einfache Text Strings die man per Cut and Paste in jedem Text Editor verarbeiten kann.
Unter Linux ist das schnell mit den bordeigenen Wireguard Tools erledigt:


Weitere VPN Client (Peer) Schlüssel generiert man dann nur noch mit wg genkey | tee peer2_private.key | wg pubkey > peer2_public.key usw.
Wie man den Schlüssel nennt ist beliebig. Eindeutige Bezeichnungen wie wg genkey | tee HerrMeier_private.key | wg pubkey > HerrMeier_public.key sind natürlich auch möglich.

Unter Windows klickt man "Einen leeren Tunnel hinzufügen" was dann das entsprechende Schlüsselpaar generiert und komplettiert dann das Setup im Textfeld.
wgwinclneu
Alternativ importiert man hier eine komplett fertige Konfig Datei mit der Endung .conf

back-to-topServer Konfiguration Linux


Die Server Konfig Datei befindet sich unter /etc/wireguard/wg0.conf ist sehr schlank und schnell aufgesetzt z.B. mit dem nano Editor:

  • Address = Die internen VPN Server Tunnel Adresse
  • PrivateKey = Der private Server Schlüssel den man oben genereiert hat
  • ListenPort = Der UDP Port auf den der Server hört. (Achtung: Dieser muss zu dem im Port Forwarding Konfigurierten identisch sein !)
  • Im Peer Bereich dann der öffentliche Schlüssel des Clients und unter "AllowedIPs" die Adressen die der Wireguard Server von diesem Client annimmt. Alles andere weist der Server ab, hat also quasi eine Firewall Funktion. Hilfreich ist auch das sog. "Cryptokey Routing" was bewirkt das der Wireguard Server und Client das Routing für die jeweils remoten IP Netze, wie auch bei OpenVPN, automatisch in die Routing Tabelle übernimmt.

Mit wg-quick up wg0 startet man den Wireguard Server. Entsprechend stoppt wg-quick down wg0 ihn. Macht man Änderungen an der Konfig muss anschliessend auch der Wireguard Server mit systemctl restart wg-quick@wg0 neu gestartet werden !
Ob der Tunnel aufgebaut wurde überprüft man mit wg show (unixoide OS).

back-to-topServer Konfiguration Windows


Entsprechend sieht die Server Konfig dann im Windows Setup aus:

wgcl3

Hier startet man den Wireguard Server mit einem Klick auf "Aktivieren".

wgcl4

back-to-topKonfiguration Wireguard Client


Die Client Konfig sieht dann völlig identisch aus:

  • PrivateKey = Privater Key des Clients
  • Unter [Peer] dann PublicKey = öffentlicher Schlüssel des VPN Servers

Zusätzlich kommt hier der Eintrag Endpoint = <Zieladresse_Server>:51820 hinzu, der die IP Adresse oder den Hostnamen des VPN Servers sowie dessen UDP Port definiert.

Zu beachten ist das dies bei einer Installation des VPN Servers im lokalen Netz immer der DynDNS Hostname des Routers oder dessen öffentliche IP Adresse ist. Nur diese ist aus dem Internet ansprechbar und leitet ja, wie oben bereits beschrieben, diesen VPN Verkehr per Port Forwarding an den internen Wireguard Server weiter.
Beispiele sind dann z.B. Endpoint = meinrouter.dyndns.org:51820 bei DynDNS Hostnamen oder Endpoint = 85.1.2.3:51820 oder eine IPv6 Adresse wer eine öffentliche IP hat.
Bei einer Installation in der Peripherie auf Router oder Firewall direkt, entfällt das natürlich und man gibt dort dann direkt deren öffentliche IP an.


Entsprechend sieht die Konfig dann wieder im Windows Setup aus:

winwg1

back-to-topKonfiguration Smartphone Client


sp1

back-to-topWireguard Client Konfig mit QR Code an mobile Geräte exportieren


Unter Linux installiert man mit apt install qrencode einen einfachen QR Encoder und generiert dann mit:


einen Wireguard Client QR Code den man dann einfach durch Abfotografieren mit der Kamera in Smartphone oder Tablet importiert.

qrcode

back-to-topVPN Verbindung checken


Unter Windows checkt man zuerst die IP Adressierung mit ipconfig und die Routing Tabelle um zu prüfen das alle IP Settings OK sind.
Dann führt man einen Ping ins remote Netz aus über den VPN Tunnel. (Hier im Beispiel auf die gegenüberliegende FritzBox 192.168.188.1)
Ein sehr gutes Tool für Mobilgeräte sind dafür die HE.NET_Network_Tools aus den entsprechenden App Stores.



Ping Check vom remoten Client via VPN auf den Router (FritzBox):

back-to-topIst das auch wirklich sicher ?


Wer Zweifel an der sicheren Verschlüsselung hat, lässt einmal einen Wireshark Trace auf den Wireguard Server los. Hier im Beispiel einmal der Ping vom remoten VPN Clients auf die FritzBox:

shark-wg

Wie man im Screenshot zweifelsfrei sieht, lassen sich aus den Daten keinerlei Rückschlüsse ziehen welche Daten über den VPN Tunnel übertragen werden.

back-to-topDynamisches Routing mit Wireguard


Ein interessanter Aspekt ist WireGuard mit dynamischem Routing wie OSPF oder RIPv2 zu nutzen. Dies macht Sinn wenn man ein voll- oder teilvermaschtes VPN Design benutzt um so eine automatische Routing Redundanz zwischen verschiedenen Standorten zu nutzen. Damit lassen sich hochverfügbare VPN Standortverbindungen realisieren.
Normal verwendet man dazu VPN Router die dynamische Routing Protokolle integriert haben wie z.B. Cisco, pfSense/OPNsense, Mikrotik usw. und in diesem_Forentutorial grundlegend beschrieben ist.
Es lässt sich aber auch mit externen Servern realisieren. Sogar ein Raspberry Pi Scheckkarten Rechner reicht dafür.
Es würde den Rahmen dieses Tutorials sprengen alles im Detail zu beschreiben so das hier nur die wichtigsten ToDo Schritte für so ein Design aufgeführt sind.
Basis ist die Quagga Routing Software wie sie HIER schon beschreiben wurde. Das Tutorial geht von einer bestehenden Grundinstallation aus und nutzt OSPF als Routing Protokoll Beispiel.

back-to-topKonfig Dateien

Die entsprechenden Konfig Dateien sehen so aus:
zebra.conf
ospfd.conf
wg0.conf
Wichtig ist hier der beidseitige Eintrag "224.0.0.5/32" (und .6) unter "Allowed IPs" der das lokale Multicast zwischen den OSPF Knoten im VPN Tunnel erlaubt.


back-to-topRouter oder Firewall als Wireguard Server


Viele handelsübliche Router oder Firewalls bieten heute ein onboard Wireguard VPN. Offene Router Betriebssysteme wie OpenWRT gehören natürlich dazu. Als Auszug seien hier 2 Beispiele genannt:

pfSense oder OPNsense Firewall:
wgsense

Achtung ! beim pfSense Package und dem Erstellen von automatischen Routen. Siehe dazu HIER !!

GL.inet Routermodelle:
wgglinet

back-to-topWeiterführende Links


Wireguard Bug in pfSense und OPNsense Package:
https://administrator.de/knowledge/pfsense-2-5-2-wireguard-package-und-d ...

Wireguard Download:
https://www.wireguard.com/install/

Wireguard Performance Vergleich:
https://www.wireguard.com/performance/

DS-Lite Anschluss und VPN: Lösung mit Vermittlungsserver und fester IP:
https://administrator.de/forum/zwei-mobilfunkrouter-tp-link-mr200-vpn-ve ...
https://administrator.de/tutorial/feste-ips-zuhause-in-pfsense-via-wireg ...
https://administrator.de/tutorial/feste-ips-zuhause-pfsense-tunnel-56761 ...
Tücken bei remotem Port Forwarding in den WireGuard VPN Tunnel beachten:
https://administrator.de/contentid/1161214871#comment-1280687176

WireGuard Site-2-Site VPN mit OPNsense und Mikrotik:
https://administrator.de/forum/ros-7-richtige-wireguard-config-666701.ht ...

OpenVPN "Merkzettel":
Merkzettel: VPN Installation mit OpenVPN

L2TP VPN mit onboard VPN Clients auf pfSense Firewall:
PfSense VPN mit L2TP (IPsec) Protokoll für mobile Nutzer

L2TP VPN mit onboard VPN Clients auf Mikrotik Router:
https://administrator.de/content/detail.php?id=562927&token=111#comm ...

IPsec VPN mit onboard VPN Clients auf pfSense Firewall:
IPsec VPN für mobile Benutzer auf der pfSense oder OPNsense Firewall einrichten

Dynamisches VPN Routing mit OSPF oder RIPv2:
https://administrator.de/tutorial/cisco-mikrotik-pfsense-vpn-standort-ve ...

Preiswerte Wireguard und OpenVPN Router Hardware:
https://www.amazon.de/GL-iNet-GL-MT300N-V2-Repeater-Performance-Compatib ...

Raspberry Pi 4 Hardware:
https://www.reichelt.de/raspberry-pi-4-b-4x-1-5-ghz-2-gb-ram-wlan-bt-ras ...
https://www.reichelt.de/raspberry-pi-4-b-4x-1-5-ghz-4-gb-ram-wlan-bt-ras ...
Netzteil:
https://www.reichelt.de/raspberry-pi-netzteil-5-1-v-3-0-a-usb-type-c-eu- ...
Passendes Gehäuse mit passiver Kühlung:
https://www.amazon.de/iuniker-Raspberry-Gehäuse-Kühlkörpe ...

Content-Key: 660620

Url: https://administrator.de/contentid/660620

Ausgedruckt am: 18.01.2022 um 10:01 Uhr

Mitglied: brammer
brammer 11.03.2021 um 14:05:24 Uhr
Goto Top
Hallo,

wer es damit nicht hinbekommt ist, dem ist nicht mehr zu helfen!

brammer
Mitglied: aqui
aqui 11.03.2021 um 14:08:28 Uhr
Goto Top
Hoffentlich ! 🙂
Smartphone Client fehlt noch und wird nachgereicht....
Mitglied: pasu69
pasu69 11.03.2021 um 14:15:03 Uhr
Goto Top
Wenn man zum Beispiel einen Raspi nutzt, kann man den Wireguard Server recht einfach
mit PIVPN (https://www.pivpn.io/) einrichten - inkl. einfacher Generierung eines QR Codes,
den man mit der Wireguard App einfach abfotografieren kann.
Mitglied: Visucius
Visucius 11.03.2021 aktualisiert um 15:24:31 Uhr
Goto Top
Cool, Danke für die Übersicht @aqui. Bin noch am überprüfen meiner Setups um sicherzustellen, dass ich nix übersehen habe ;-) face-wink

a) Ein kleiner Vertipperer: Bei der ersten Zeichnung, der “WG-Server” hat die .254 ... das Forwarding im Router läuft aber auf die .50.

b) Hier im Forum wird immer auf VPN OHNE NAT Wert gelegt, alleine schon wegen der Leistung. So wie ich das interpretiere “nattest” Du aber doch hier auch mit dem 100er-IP-Netz?! Oder habe ich das Problem nicht richtig verortet?!

c) Beim Routing hast Du auch eine feste Router 192.168.0.0 ... in die VPN reingeleitet ... ist das gewollt?

d) Evtl. ließe sich diese Anleitung um die Option: “Site2Site” ergänzen. Ich z.B. habe/hatte da Probleme beim Routing.
Mitglied: aqui
aqui 12.03.2021 aktualisiert um 11:12:50 Uhr
Goto Top
Hi Visucius,
a.)
ist korrigiert ! Danke fürs Aufpassen ! ;-) face-wink
b.)
Du hast Recht. Das Tutorial geht aber auf dieses nicht optimale VPN Design in der Eingangbeschreibung ein und propagiert generell immer eine direkte VPN Server Installation in der Peripherie auf Router oder Firewall und eher nicht im lokalen LAN. Viele haben aber nicht diese Möglichkeit und deshalb geht das Tutorial mal von klassischen Heimnetz Ansatz aus. Ist ja immer ein Kompromiss den man machen muss bei Anleitungen die mehr oder minder allgemeingültig und für eine breite Masse verständlich sein sollen.
c.)
Jein. Für eine reine Client Anbindung ist das natürlich nicht zwingend nötig. Da hast du Recht. Es zielt vorab schon auf ein optionales Site-to-Site VPN. Auch wieder ein Kompromiss
d.)
Kommt... Ggf. auch noch mit dynamischem Routing (RIPv2, OSPF etc.)
Mitglied: Visucius
Visucius 12.03.2021 aktualisiert um 11:11:33 Uhr
Goto Top
b) Ah ok, “natten” heißt also in dem Fall, die “hinter dem Router” installierte VPN-Appliance. Ehrlich gesagt habe ich - im Wireguard-Umfeld - bisher nur solche Setups und Anleitungen erlebt (Synology, Raspi, Virtualisierungen, ...). Weil ja noch recht neu.

Ich vermutete bisher, mit “natten” im VPN-Umfeld sei die “Notwendigkeit” des (eigenen) VPN-internen IP-Bereichs, in Deinem Beispiel der 100.64... gemeint, die man sich irgendwie bei anderen VPNs ersparen könnte. ;-) face-wink

c) und d) Da bin ich dann mal gespannt ;-) face-wink

Viele Grüße und einen guten Start ins WE an alle Forenteilnehmer!
Mitglied: aqui
aqui 12.03.2021 aktualisiert um 11:17:59 Uhr
Goto Top
Ja, du hast Recht. Im eigenen internen Netzwerk NATet man natürlich nicht, das ist immer Quatsch und schafft Probleme.
Es gilt nur für die "Schlauen" die öffentliche VPN Provider nutzen um ausländische Audio oder Video Inhalte im Internet zu konsumieren und so eine andere GeoIP als Absende IP nutzen um Inhaltefilter zu umgehen. Nur für solchen Usinn benötigt man ein NAT im VPN Tunnel. Niemals aber für ein eigenes VPN.
Mitglied: IceAge
IceAge 12.03.2021 aktualisiert um 14:29:06 Uhr
Goto Top
Vielen Dank für das tolle Tutorial. Unter OpenVPN lasse ich mich bei jedem Verbindungsaufbau eines Clients per Bash-Skript informieren. Besteht bei wireguard auch die Möglichkeit externe Skript bei einem Verbindungsaufbau bzw. abbau auszulösen?

Grüße I.
Mitglied: aqui
aqui 12.03.2021 aktualisiert um 18:31:37 Uhr
Goto Top
Ja, du kannst in der wg0 Konfig Datei mit PostUp und PostDown solche Scripte starten. Hier siehst du das mal am Beispiel von iptables:
https://wiki.alpinelinux.org/wiki/Configure_a_Wireguard_interface_(wg)
Mitglied: IceAge
IceAge 12.03.2021 um 20:35:52 Uhr
Goto Top
perfekt, danke dir.
Mitglied: danber
danber 31.03.2021 um 10:26:41 Uhr
Goto Top
Hallo,
vielen Dank für die tolle Anleitung. Gibt's sowas auch für IPv6? Ich leide unter cgnat 😉
Mitglied: aqui
aqui 31.03.2021 aktualisiert um 11:39:07 Uhr
Goto Top
Ja, natürlich, das klappt auch für IPv6. Du musst dann nur die v4 Adressen durch v6 Adressen ersetzen bzw. hinzufügen.
https://administrator.de/content/detail.php?id=559360&token=475
https://meet-unix.org/2019-03-21-wireguard-vpn-server.html
Mitglied: danber
danber 31.03.2021 um 12:55:26 Uhr
Goto Top
Vielen Dank, ich werde es mal probieren. Ich hab mich bisher noch nicht mit IPv6 beschäftigt.
Mitglied: aqui
aqui 31.03.2021 um 13:42:37 Uhr
Goto Top
Dann hilft eine sehr gute und kostenfreie IPv6 Praxis Lektüre um da schnell reinzukommen: ;-) face-wink
https://danrl.com/ipv6/
Mitglied: Ghosti85
Ghosti85 11.07.2021 um 12:27:11 Uhr
Goto Top
Grüße euch alle!

Ist immer sehr interessant zu lesen von leuten die sich auskennen.
Leider ist hier mein Latein am Ende oder meine grauen Zellen schon abgestorben^^
und hoffe das sich jemand kurz die Zeit nehmen kann mir ein wenig zu helfen?

Was bedeutet Nat'en im Tunnel, was bewirkt es und wofür wird es den überhaupt verwendet?
DIe etlichen Beispiele die ich mir bisher angesehen habe (die ich auch so umgesetzt habe) beinhaltet auf der Server bzw. wg0.conf immer folgenden Part:

PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

aber... wie müsste den der Befehl überhaupt abgesetzt werden um nicht zu Natten?

Entschudligt bitte jetzt schon die doofen fragen, aber das Projekt überschreitet ein großes Stück mein wissen..
Um euch gedanklich abzuholen....

Primär hatte ich nach einer Lösung gesucht um zwei Standorte zu vernetzen.
Anfangs machte ich das auch über Zwei Fritzboxen die aber schlicht überfordert waren mit der Datenmenge und Performance.
Hier hatte ich mir auch versucht Professionelle hilfe zu suchen und auch wirklich gegen bezahlung eine Lösung herbei zu schaffen.
Leider ohne Erfolg (kein Scherz die Kohle von mir stinkt wohl oder so..) ... Sprich ich musste das trotz enormen Zeitmangel selbst hinbekommen. Hierzu hatte ich mir zwei RaspPi4 geholt und nach diversen Tutorials auch umgesetzt.
Stand heute ist... Das zusammenschließen der beiden Netze funktioniert endlich was leider etwas mit stolper fallen war da die Tutorials nicht 1:1 immer geklappt hatten (Gab Probleme mit dem DYNDNS Service von My Fritz..).
Jetzt frage ich mich eben wie oben beschrieben was es mit dem Natten auf sich hat.
Das nächste Problem das ich habe ist das die Site to Site steht und auch echt klasse ist
aber ich es nicht gebacken bekomme einen Client hinzuzufügen obwohl alles scheinbar richtig konfiguriert ist (da werde ich demnächst mal einen Eintrag hier im Forum erstellen).

Hoffentlich kann sich hier jemand kurz die Zeit nehmen bezüglich Nat.
Danke euch allen schon mal und wünsche euch einen schönen Sonntag.
Mitglied: aqui
aqui 11.07.2021 um 14:33:01 Uhr
Goto Top
Was bedeutet Nat'en im Tunnel,
Auf dem Tunnel Interface (wg0) wird ein IP Adress Translation gemacht. Was das genau ist kannst du HIER nachlesen. Es ist das was an jedem stinknormalen Internet Router passiert, das im Internet nicht routebare private_IP_Netze auf die öffentliche IP Adresse des Routers umgesetzt werden als Absender IP. Damit "denkt" dann das Internet das dieser Traffic von einer öffentlichen IP kommt und kann es so weltweit routen und bei Antwort auch wieder auf die Ursprungs IP Adresse rückübersetzen. Simple NAT Grundlagen... ;-) face-wink
und wofür wird es den überhaupt verwendet?
Eigentlich für gar nix und es ist sinnfrei und kontraproduktiv es zu aktivieren denn es verhindert das bidirektionale Routing in den VPN Netzen und kosttet sinnlos Performance.
Es wird eigentlich nur bei den unwissenden Nutzern gemacht die sich in die Fänge öffentlicher VPN Provider begeben um Geolocation Blockings usw. zu überwinden oder illegale Audio- oder Video Daten konsumieren. So einen traurigen Fall zeigt dieser_Thread.
Ansonsten ist es sinnfrei und sollte man nie machen.
überschreitet ein großes Stück mein wissen..Um euch gedanklich abzuholen....
Ist aber nur einfaches Allgemeinniveau in einem Administrator Forum. ;-) face-wink
Zwei Fritzboxen die aber schlicht überfordert waren mit der Datenmenge und Performance.
Die schlechte VPN Performance der FBs ist allgemein bekannt. Ist ja auch nicht eines ihrer Primär Features als einfache Consumer Box !
aber... wie müsste den der Befehl überhaupt abgesetzt werden um nicht zu Natten?
Das ist kinderleicht: Ihn schlicht und einfach weglassen und NICHT konfigurieren ! ;-) face-wink
Hierzu hatte ich mir zwei RaspPi4 geholt und nach diversen Tutorials auch umgesetzt.
Da bist du ja schonmal auf dem absolut richtigen Weg !
Im Grunde ist auch das kinderleicht denn es reicht nach dem Booten des Raspberry Pi Lite Images einfach:
  • apt update und apt full-upgrade
  • Danach ein apt install wireguard
  • Schlüssel erzeugen und Wireguard entsprechend der Anleitung oben einrichten
  • Statische Routen und vor allem Port Forwarding im Internet Router (FritzBox etc.) gem. obiger Anleitung einrichten.
  • Fertisch
Das sollte auch ein blutiger Laie nur mit Abtippen problemlos hinbekommen. ;-) face-wink
Gab Probleme mit dem DYNDNS Service von My Fritz..
Dafür kann das Tutorial aber nix. Jedenfalls nicht das hiesige Tutorial.
Jetzt frage ich mich eben wie oben beschrieben was es mit dem Natten auf sich hat.
Gar nichts. Es ist schlicht und einfach Unsinn in eigenen privaten Netzen und sollte in keinem Falle konfiguriert werden weill es eine Routing Einbahnstrasse zwischen den VPN Netzen schafft.
aber ich es nicht gebacken bekomme einen Client hinzuzufügen
Einfach ein neues Key Pärchen für den Client erzeugen und den Peer am Server eintragen..fertisch. Eine Sache von max. 5 Minuten.
da werde ich demnächst mal einen Eintrag hier im Forum erstellen
Nur zu denn das hilft sicher auch anderen. Außerdem hilft es das Tutorial hier nicht mit Basisdiskussionen aufzublähen und das auf einen dedizierten Thread zu lenken.
Hoffentlich kann sich hier jemand kurz die Zeit nehmen bezüglich Nat.
Aber immer doch... 😉
und wünsche euch einen schönen Sonntag.
Ebenso !
Mitglied: fnbalu
fnbalu 02.08.2021 um 16:38:23 Uhr
Goto Top
Mahlzeit,
aufgrund der Deutschen Glasfaser CG-Nat Problematik habe ich mir mittlerweile einen VPS zugelegt und dort wie zu Hause pfSense 2.5.2 installiert.

Der VPS hat seine statische IPv4 als WAN Adresse und ich habe von meiner pfSense zu Hause ein Wireguard VPN dorthin aufgebaut.
Das VPN besteht auch soweit und ich kann jeweils die andere Tunnelgegenstelle pingen. Sprich die Routen/Gateways etc funktionieren.

VPS pfSense
IPv4 111.222.333.444
Tunnel IP 10.0.0.1
Erlaubte Gegenstelle 192.168.1.0/24; 10.0.0.0/24

private pfSense
Tunnel IP 10.0.0.2
Erlaubte Gegenstelle 0.0.0.0/24; 10.0.0.0/24 (aktuell doppelt gemoppelt)


Ich möchte nicht von innen nach außen, aber ich möchte Ports durchreichen wie früher.

Gedachte habe ich es mir wie früher. IP:Port.
In dem Fall ein Beispiel 111.222.333.444:55555 das soll dann direkt über den Tunnel geschickt werden und dann 192.168.1.50:80 zugewiesen werden.
Das ist jetzt beispielhaft. Versucht habe ich es bisher nur auf die pfSense selbst mit Port 443 da die Clients noch nicht über die neue Hardware laufen solange ich keinen Erfolg habe.

Wireguard hat Beidseitig ein Scheunentor vorerst. Any Any Any

Nun habe ich beim VPS mich an NAT versucht.
Source * Port * Destination "Tunnel Adress" Port 55555
Das blockt er dann zumindest schonmal nicht in der Firewall.

Aber es kommt nicht drüben an.
Was und wie viele Regeln muss man denn erstellen, damit der Traffic rüber geht? Oder gehört da noch was an Routen zusätzlich dazu?
Wie gesagt ich kann gegenseitig die 10.0.0.X pingen
Mitglied: aqui
aqui 02.08.2021 um 21:37:14 Uhr
Goto Top
Das grundlegende HowTo zu dem Thema hast du gelese .
https://administrator.de/forum/zwei-mobilfunkrouter-tp-link-mr200-vpn-ve ...
Das was dort steht giltanalog auch für Wireguard.
Mitglied: fnbalu
fnbalu 04.08.2021 aktualisiert um 18:49:20 Uhr
Goto Top
Sodele, ich habe mir das auch genau angesehen und weiter getestet.

Da das die noch nicht produltive pfSense ist, habe ich testweise mal einen Shelly als Client eingehängt und die pfSense als Router definiert (vereinfacht gesagt). Der Shelly hat die 192.168.1.45 und lauscht auf Port 80

Nun kann ich von der entfernten pfSense die 192.168.1.45 pingen.
Ich gehe also mal davon aus, dass der Tunnel soweit steht.


Ziel soll jetzt ja sein den Port 80 über die IP des VPS zu erreichen.

Der VPS hat eine NIC. Dieser habe ich statisch die IPv4/22 zugewiesen und den Gateway eingetragen. Bei IPv6 analog.
Das Wireguard Interface hat die 10.0.0.1 zugewiesen. Routen und Gateways sind eingetragen, sonst würde denke ich auch der Ping nicht gehen.


Nach meinem Geschmack könnte ich mit NAT arbeiten um nur spezielle Ports rüber zu lassen.
Die VPS-pfSense soll also Port 80 über WAN annehmen und über den Tunnel schicken. (80 erstmal testweise)

nat
So ist gerade die Regel dazu

fwlog
Das schmeißt das LOG dazu.

Testen tue ich mit meinem Server der versucht die IPv4 des VPS anzusprechen. Der Server hängt noch an der alten pfSense, die auch die Telekom Leitung nutzt.

Die Gegenstelle vom VPS ist wie schon erwähnt die neue pfSense welche Deutsche Glasfaser nutzt. Aufgebaut wird der Tunnel von mir zum VPS wegen DG-Nat


Habe ich da einen Denkfehler?


Edit: Sobald ich einseitig den WireguardVPN stoppe und wieder starte, geht anschließend der Ping nicht.
Mitglied: C.Caveman
C.Caveman 04.08.2021 um 16:57:19 Uhr
Goto Top
Wäre es möglich, dein Problem in einem eigenen Beitrag zu diskutieren?
Mitglied: Reini82
Reini82 03.10.2021 aktualisiert um 15:32:11 Uhr
Goto Top
Hi,

erstmal super Anleitung für Wireguard!

falls es hilfreich ist bei dem Wireguard Client für Windows ist seit der Version 0.3.1 auch möglich ohne Administrationsrechte die GUI zu verwenden. Dazu müssen zwei Bedingungen am Client eingestellt werden:

  • Der Benutzer muss in der lokalen Computergruppe "Netzwerkkonfigurations-Operatoren" sein
  • Es muss ein neuer Schlüssel angelegt werden
  • Unter diesem Schlüssel muss ein ein neuer Wert vom Typ DWORD mit dem Namen "LimitedOperatorUI" und dem Wert "1" angelegt werden

Gruß
Heiß diskutierte Beiträge
question
Windows Exchange-Server benötige ich eine Domain?Bella21Vor 1 TagFrageWindows Server21 Kommentare

Hallo alle zusammen, ich bin neu auf dem Gebiet. Ich habe Exchange Server auf einen Windows Server 2012 installiert. Nach der Installation fertig war, ist ...

question
WEBSEITE zerschossen. Brauche dringend hilfe! :) gelöst wieoderwasVor 1 TagFrageWebentwicklung5 Kommentare

Hallo zusammen, ich wollte eben auf der Typo3 Seite von unseren Unternehmen die Erweiterung der IT Kanzlei installieren. Nun erhalte ich beim Webseiten aufruf folgenden ...

question
Scanner Log4JjoergVor 1 TagFrageSicherheits-Tools15 Kommentare

Hallo zusammen, Log4J ist ja mittlerweile schon ein paar Tage her aber immer noch aktuell. Ich bin aktuell auf der Suche nach einem Scanner der ...

question
Welcher Switch Hersteller kann trotz Silikonknappheit ordentlich liefern?NordicMikeVor 1 TagFrageSwitche und Hubs7 Kommentare

Moin zusammen, dieses Ubiquiti Zeug muss weg, das kann ja nicht einmal QoS, auch, wenn der Unifi Controller mit seiner zentralen Verwaltung gut zu bedienen ...

question
DNS neu einrichtensmschmidtVor 1 TagFrageDNS14 Kommentare

Hallo zusammen, hab wieder ein Problem: Hab einen neuen Windows Server 2022 (Server3) in unsere Domain aufgenommen, zum DC gemacht und DHCP und DNS installiert. ...

question
Telefonie noch im alten Standort erneuern?GrinskeksVor 1 TagFrageTK-Netze & Geräte7 Kommentare

Hallo zusammen, bei meinem neuen Arbeitgeber steht der Umzug in ein neues Firmengebäude und eine Aktualisierung der Telekommunikation an. Wir hatten einen Support zur betagten ...

question
Eigene Hardware + VLAN an Vodafone Kabel gelöst darkness08Vor 1 TagFrageInternet12 Kommentare

Guten Morgen Zusammen, ich möchte gerne an einen Vodafone Kabelanschluss eigene Hardware betreiben. Da es sich hierbei nicht um meinen eigenen Anschluss handelt fehlt mir ...

question
Reverse Proxy über 2 netzwerkegiorgio123Vor 1 TagFrageNetzwerke13 Kommentare

Hallo Zusammen Ich habe einen Problem und komme alleine nicht weiter Ich habe einen Revers Proxy im NAT-Bereich der Firewall2. Nun muss dieser Reverseproxy muss ...