Das VPN ein sicheres Mittel ist um sich von aussen mit dem privaten Netzwerk zu verbinden ist wohl unbestritten.
Trotzdem scheuen viele davor zurück, ein solches System zu installieren und zu betreiben.
Wie sich ein komfortabler VPN-Server für die Privatnutzung einrichten lässt, beschreibe ich in diesem Artikel.
Im letzten Jahr habe ich über PI VPN (Link zum Artikel) berichtet. Mit PI VPN lässt sich wahlweise ein OpenVPN als auch ein WireGuard Server aufsetzen.
Pi VPN ist ebenfalls sehr einfach zu installieren, aber dennoch ist es im Detail nicht so benutzerfreundlich wie WireGuard Easy.
Z.B. ist es bei PI VPN nötig sich mit SSH (dem Terminal) auf den Server zu verbinden, um neue Zugänge einzurichten und die Daten der vorhandenen abzufragen. Um neue Geräte wie PCs, Tablets oder Smartphones einzurichten sind die eingerichteten Zugangsdaten erforderlich. Dieses Manko behebt Wireguard Easy auf komfortable Weise.
Es stellt nämlich neben der Serverfunktionalität auch eine Web-Oberfläche zur Verfügung, über die solche administrativen Vorgänge einfach zu handhaben sind.
Voraussetzungen für die Installation:
Ein SBC wie der Raspberry PI oder eine VM auf einem anderen Server. Ein Container z.B. unter Proxmox ist ebenfalls geeignet. Ich benutze Debian 11 als Basis.
Zunächst wird (falls noch nicht vorhanden) Docker installiert
curl -sSL https://get.docker.com | sh
sudo usermod -aG docker $(whoami)
exit
Danach diesen kompletten Block kopieren.
Um den Server erreichbar zu machen sind Anpassungen bei WG_HOST und PASSWORD nötig.
Bei WG_HOST wird die URL eingetragen, unter der der Server erreichbar ist
Also i.d.R. eine Dyndns Adresse.
Das Passwort dient am Ende der Anmeldung auf der Web-Oberfläche
Die Ports können so belassen werden
Der Port 51820 muss natürlich im Router freigeschaltet werden
Der Port 51821 dient der Administration über den Webserver und sollte nicht von aussen zu erreichen sein.
docker run -d \
--name=wg-easy \
-e WG_HOST=🚨YOUR_SERVER_IP \
-e PASSWORD=🚨YOUR_ADMIN_PASSWORD \
-v ~/.wg-easy:/etc/wireguard \
-p 51820:51820/udp \
-p 51821:51821/tcp \
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
--sysctl="net.ipv4.ip_forward=1" \
--restart unless-stopped \
weejewel/wg-easy
Danach läuft die Installation ab.
und im Anschluss kann die Weboberfläche mit der jeweiligen IP + 51821 aufgerufen werden
z.B. 192.168.10.22:51821
An der Stelle das Passwort eingeben
Jetzt kann der erste Client eingerichtet werden.
Danach ist der Client erstellt. Jetzt kann man:
- Den Zugriff des Clients ein oder ausschalten.
- Für Mobilgeräte den QR Code anzeigen lassen.
- Für PCs die config-datei herunterladen.
- Den Client löschen.
Kannst du aus deinem Setup vom lokalen Netz auf wireguard-Clients zugreifen? Bei mir läuft es aktuell (default configs) nur unidirectional, sodass VPN-Clients im Heimnetz alles erreichen können (und andere VPN-Clients). Gruß
Warum soll man das wollen ? Ich habe es nicht ausprobiert, aber ich denke mal das es nicht funktioniert. Ist ja auch nicht Sinn der Sache.
Zum Beispiel um Clients in ansonsten abgeschotteten Netzwerken zu erreichen. Ich starte die Connection zum VPN-Konzentrator (bspw. auf meinem NAS) und kann dann aus meinem Heimnetz etwa auf einer Client zugreifen, der hinter einer Firewall in meiner Firma ist.
Alternative: https://github.com/qdm12/gluetun Erfahrungen oder Vergleiche wären interessant.
Endlich ist WireGuard wirklich einfach! Danke.
Sowas bräuchte ich auf dem OpenWRT router.
Mein Ziel wäre es, das Sich auch im Heimnetz alle Geräte nur per wireguard verbinden. So das es egal ist ob ein Laptop zuhause oder unterwegs ist. Allerdings scheint wireguard das Problem zu haben, dass darüber gewisse Dinge nicht gehen. bsp. Multicast kann man vergessen.
Auch Kdeconnect und Fdroid share geht nicht über wireguard.