Clients und Peers sind schnell eingerichtet
Zum Aufbau der VPN-Verbindung braucht es nun einen zweiten Rechner, etwa ein Android-Telefon. Hier lässt sich ebenfalls schnell und fast selbsterklärend eine Konfiguration erstellen. Zu beachten ist, dass sich die IP-Adresse des Clients im VPN-Subnetz des Servers befindet. Unter Android kann dafür die Open-Source-App des Projekts verwendet werden, die kostenlos aus Googles Play Store oder dem alternativen App Store F-Droid bezogen werden kann. Diese erstellt automatisch die benötigten Schlüssel.
Jetzt müssen nur noch die öffentlichen Schlüssel zur gegenseitigen Kommunikation ausgetauscht werden. Auf dem Server wächst unsere Konfigurationsdatei um den Inhalt im folgenden Codebeispiel. Mit der Option für zugelassene Adressen (AllowedIPs) lässt sich festlegen, von wo aus der Server Verbindungen des Clients akzeptiert.
[Peer] PublicKey= CLIENT_PUBLICKEY AllowedIPs = 0.0.0.0/0
Das Gleiche folgt nun mit dem Schlüssel des Servers auf unserem Android-Client. Als Endpunkt legen wir hier noch die WAN-IP-Adresse unseres Servers fest. Für ein internes Netzwerk könnte das wie in diesem Beispiel 192.168.178.70:51820 sein.
Sowohl der Client als auch der Server sollten nun anzeigen, dass eine Verbindung zu dem jeweiligen Peer besteht und Daten ausgetauscht werden.
Die Konfiguration der Clients lässt sich auch auf dem Server selbst mit einer Konfigurationsdatei und dort erzeugten Schlüsseln erstellen. Diese Datei lässt sich dann als QR-Code codieren und mit der Android-App direkt einspielen.
qrencode -t ansiutf8 -r client.conf
Firewall-Regeln zur Kommunikation nach draußen
Um auch tatsächlich sinnvoll per VPN zu kommunizieren, müssen nun noch die Firewall-Regeln angepasst werden. So muss der Server die Kommunikation über den genutzten Port erlauben. Darüber hinaus muss ein Paket-Forwarding für den Fall eingerichtet werden, dass der Server als eine Art VPN-Gateway zum Internet dienen soll. Auch VPN-intern müssen Zugriffe geregelt werden, etwa auf Webservern oder Ähnliches.
Wireguard selbst bietet hier in der Konfigurationsdatei die Möglichkeit, mit den Schlüsselwörtern Postup und Postdown direkt das Verhalten etwa der Firewall durch Skripte und Befehle zu beeinflussen.
Da sich die verschiedenen Betriebssysteme, Linux-Distributionen und auch Möglichkeiten oder Schnittstellen etwa bei gemieteten Servern in Bezug auf die Firewall teils sehr deutlich voneinander unterscheiden, können wir hier nur auf deren Dokumentation verweisen. Anleitungen dazu, auch speziell für Wireguard, bieten inzwischen auch einige kommerzielle Hoster sowie vor allem die Communitys der Linux-Distributionen.
Im Vergleich zu anderen VPN-Techniken ist es immer noch überraschend, wie verblüffend einfach die Einrichtung von Wireguard ist - insbesondere in Bezug auf die Sicherheit der Verbindung, da Hauptentwickler Donenfeld von Beginn an keinerlei Abstriche zugelassen hat. Bei anderen Techniken wie etwa OpenVPN hängt die Sicherheit oft von der gewählten Konfiguration und der unterstützten Technik der eingesetzten Clients ab. Auch das verhindert Wireguard.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Open Source: Schnelles und einfaches VPN mit Wireguard |
- 1
- 2
Ja, nein, vielleicht. Hängt von ab, *was* du machen willst. Wireguard agiert auf OSI...
Mit Allowed IP habe ich schon viel herumgespielt und leider habe ich der Verwendung...
Ich habe lange mit Tinc gearbeitet, das Tool funktioniert sehr ähnlich um ein VPN zu...
Quelle: WireGuard . com #cryptokey-routing Betrachtet als Server/Client (Datenfluss...