NEU! UPGRADE IP 11 verfügbar!
NEU! LICHTWIDGET - DPT 7.600 - Logik Manager Update - sowie viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/B9MUEJj2

Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Ab sofort kann jeder die neue VISU & IFTTT testen. Info: viewtopic.php?f=8&t=5074

Release V 4 am 15. Juni 2024
Es gibt nun einen fixen Termin. Info: viewtopic.php?f=8&t=5117

NEU! Ausführliches Video Tutorial zur VISU
Jetzt werden alle Fragen beantwortet. Das Video: https://youtu.be/_El-zaC2Rrs

[FR] Wireguard als VPN

Eure Wünsche und Phantasien
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln

Ersteller
jockel
Reactions:
Beiträge: 424
Registriert: Mo Aug 13, 2018 6:31 pm
Hat sich bedankt: 193 Mal
Danksagung erhalten: 147 Mal

Wireguard als VPN

#1

Beitrag von jockel »

Hallo zusammen,

eher ein Vorschlag als ein FR und mit der Einschränkung, dass ich nicht weiß, wie fortgeschritten das Thema VPN schon bearbeitet ist.

Angeregt durch einen Artikel in einer der letzten Cts habe ich heute Wireguard VPN auf einer virtuellen Maschine mit Debian 9 getestet.

Kurz: Ich bin beeindruckt! Die Installation war sehr simpel, kein Vergleich zu openVPN oder gar IPSec. Ein paar Zeilen in einer Konfigurationsdatei, das war es. Für die Keys muss keine CA aufgesetzt werden, sie werden, ähnlich wie bei SSH, nur generiert und in die Konfigurationsdatei eingetragen.

Vielleicht besonders interessant für den Timberwolf: Auf dem Router muss keine Rückroute angelegt werden, es reicht eine simple Firewallregel für NAT, die auch in der Konfigurationsdatei definiert werden kann. Getestet habe ich das mit der openHAB iOS App und ssh auf einen anderen Server, beides von meinem iPhone aus.

Sehr schön auch: Die Konfiguration kann durch Abfotografieren eines Barcodes simpel aufs iPhone übertragen werden

Es gibt Installationspakete für wohl alle relevanten Linuxdistributionen, macOS, iOS und Android, Windows ist angekündigt, es gibt aber schon einen Client von einem Drittanbieter.

Geschwindigkeit hab ich nicht selbst getestet, aber alle Berichte die ich gelesen haben, hatten Ergebnisse weit besser als openVPN.

Übrigens: Auch Linus Torvalds ist voll des Lobes: https://lists.openwall.net/netdev/2018/08/02/124

Hier der Artikel aus der Ct in der Online Variante: https://www.heise.de/ratgeber/Sichere-V ... 08737.html

Wireguard Projektseite: https://www.wireguard.com/

Ich werde es jetzt erst einmal weiter nutzen. Sollten dabei in den nächsten Wochen keine Probleme auftreten, werde ich wohl mein Wiregate endgültig in die Rente schicken können, VPN ist der einzige Dienst den ich darauf noch nutze.

Bei Interesse stelle ich gerne meine Konfiguration vor.

Jockel
TWS 2500 ID: 145 + 1x TP-UART + 2x DS9490R, VPN geschlossen, Reboot nach Absprache / wiregate198 (im Ruhestand)

terseek
Reactions:
Beiträge: 266
Registriert: Mi Sep 05, 2018 1:09 pm
Hat sich bedankt: 505 Mal
Danksagung erhalten: 121 Mal

#2

Beitrag von terseek »

in der Tat, sehr interessant, könnte bei mir das unzuverlässige VPN der Fritzbox ablösen, brauche dafür aber dann noch einen weiteren Timberwolf.

Kann Wireguard auch zwei Standorte verbinden, die keine feste IP haben? Derzeit löse ich das mittels eines DynDNS Services; vermute daß die Fritzbox damit nicht so gut klarkommt und deshalb das VPN so unzuverlässig funktioniert.

Hinzugefügt nach 1 Stunde 28 Minuten 51 Sekunden:
terseek hat geschrieben: So Mär 31, 2019 9:35 am brauche dafür aber dann noch einen weiteren Timberwolf
In diesem Zusammenhang suche ich im Shop gerade den 2100er und kann ihn nicht finden. Ist das Modell abgekündigt?
TWS 2600 ID:186 + 3 PBM, VPN offen, Reboot nach Vereinbarung
TWS 3500L ID:895 + 1 PBM, VPN offen, Reboot nach Vereinbarung

StefanW
Elaborated Networks
Reactions:
Beiträge: 9775
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4879 Mal
Danksagung erhalten: 7820 Mal
Kontaktdaten:

#3

Beitrag von StefanW »

terseek hat geschrieben: So Mär 31, 2019 11:04 amIn diesem Zusammenhang suche ich im Shop gerade den 2100er und kann ihn nicht finden. Ist das Modell abgekündigt?
Ja, mangels Interesse haben wir das Modell aus dem Portfolio genommen. Wir wurden immer wieder für die Vielfalt kritisiert und da haben wir angefangen, die Modelle mit dem schwächsten Umsatz herauszunehmen und das betrifft vier Modelle: zwei Modelle der 200er Serie, den 1800er und auch den 2100.

Aber wir sind auch nicht unflexibel, schreib ein Ticket an vertrieb at wiregate dot de und schreib, dass Du einen TWS 2100 erwerben willst, dann prüfen wir, ob das noch geht (Gehäuse, Setup-Software usw). Alternativ könnten wir Dir auch einen 2400er aus Messe oder Rücklauf vergünstigt ("Lackkratzer-Edition") anbieten

lg

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

terseek
Reactions:
Beiträge: 266
Registriert: Mi Sep 05, 2018 1:09 pm
Hat sich bedankt: 505 Mal
Danksagung erhalten: 121 Mal

#4

Beitrag von terseek »

StefanW hat geschrieben: So Mär 31, 2019 2:01 pm könnten wir Dir auch einen 2400er aus Messe oder Rücklauf vergünstigt ("Lackkratzer-Edition") anbieten
ok, komme darauf zurück wenn klar ist, ob wireguard für mich infrage kommt
TWS 2600 ID:186 + 3 PBM, VPN offen, Reboot nach Vereinbarung
TWS 3500L ID:895 + 1 PBM, VPN offen, Reboot nach Vereinbarung

Ersteller
jockel
Reactions:
Beiträge: 424
Registriert: Mo Aug 13, 2018 6:31 pm
Hat sich bedankt: 193 Mal
Danksagung erhalten: 147 Mal

#5

Beitrag von jockel »

Kann Wireguard auch zwei Standorte verbinden, die keine feste IP haben? Derzeit löse ich das mittels eines DynDNS Services; vermute daß die Fritzbox damit nicht so gut klarkommt und deshalb das VPN so unzuverlässig funktioniert.
Ja, Endpunkte mit wechselnden IPs können verbunden werden, ich habe für meine Tests einen dynamischen DNS von DynAccess als Ziel verwendet. Ein Dauertest war das aber bislang natürlich nicht.

Grundsätzlich würde Wireguard wohl auch in einem Docker Container laufen, wenn der Host die passenden Kernelmodule installiert hat, hab ich aber nicht getestet.

Interessant für den Timberwolf vielleicht auch, dass sich mit Wireguard sehr einfach die Kommunikation (ausschließlich) per VPN für Docker Container realisieren lässt.
TWS 2500 ID: 145 + 1x TP-UART + 2x DS9490R, VPN geschlossen, Reboot nach Absprache / wiregate198 (im Ruhestand)

StefanW
Elaborated Networks
Reactions:
Beiträge: 9775
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4879 Mal
Danksagung erhalten: 7820 Mal
Kontaktdaten:

#6

Beitrag von StefanW »

Wir werden uns das sehr interessiert ansehen

Weil ein VPN; das keine Rückroute braucht, ist sehr spannend!

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Ersteller
jockel
Reactions:
Beiträge: 424
Registriert: Mo Aug 13, 2018 6:31 pm
Hat sich bedankt: 193 Mal
Danksagung erhalten: 147 Mal

#7

Beitrag von jockel »

Der Vollständigkeit halber, vielleicht möchte es ja jemand nachvollziehen, hier noch meine aktuelle Testinstallation von Wireguard.

Ein Disclaimer aber vorweg: Das ist die zur Zeit von mir verwendete Testinstallation, ggf. sind weitere Anpassungen notwendig. Außerdem garantiere ich nicht für die Sicherheit der Konfiguration (nutze sie aber selbst)

Ausgangspunkt ist eine Debian 9 Minimalinstallation, bei mir in einer VM, aber das sollte keine Rolle spielen.

Davon ausgehend:

1. Installation von Wireguard
siehe: https://wiki.debian.org/Wireguard

Code: Alles auswählen

echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable-wireguard.list
printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' > /etc/apt/preferences.d/limit-unstable
apt update
apt install wireguard

2. Aktivierung von IPv4-Forwarding
siehe z.B.: http://www.ducea.com/2006/08/01/how-to ... -in-linux/

Code: Alles auswählen

sysctl net.ipv4.ip_forward=1
echo 'net.ipv4.ip_forward = 1' > /etc/sysctl.d/99-sysctl.conf  # Make the change persistent

3. Die benötigten Keys erzeugen
In geeignetem Verzeichnis (bei mir /etc/wireguard/keys, ggf. anlegen), die benötigten Keys für den Server, den ersten Client und einen weiteren Pre-Shared Key erzeugen:

Code: Alles auswählen

umask 077
wg genkey | tee server.private | wg pubkey > server.public
wg genkey | tee client1.private | wg pubkey > client1.public
wg genpsk > client1.preshared 
Der Pre-Shared Key ist nicht unbedingt erforderlich, dann in der nachvollgenden Konfiguration die entsprechenden Anweisungen weglassen. Er schadet aber auch nicht.


4. Konfiguration des Servers
Datei: /etc/wireguard/wg0.conf, ggf. vorher umask 077 setzen

Code: Alles auswählen

[Interface]
Address    = 10.99.99.1/24
#Address   = ipv6 Network
ListenPort = 51820
PrivateKey = <Inhalt von server.private einfuegen>

PostUp     = iptables -t nat -A POSTROUTING -s 10.99.99.1/24 -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -s 10.99.99.1/24 -o eth0 -j MASQUERADE

# Client 1
[Peer]
PublicKey       = < Inhalt von client1.public einfuegen >
PresharedKey = < Inhalt von client1.preshared einfuegen >
AllowedIPs     = 10.99.99.10/32
  • Das unter "Adresse" angegebene Netzwerk darf nicht mit dem bereits verwendeten internen Netz übereinstimmen oder sich mit diesem überlappen. Außerdem sollte sie aus einem privaten IP Bereich stammen. Ein IPv6 Netzwerk kann bei Bedarf zusätzlich angegeben werden.
  • Der Port ist frei wählbar. Im Router muss ein Forwarding von UDP Paketen auf diesen Port an den Wireguard Server eingerichtet werden.
  • Die Namen der Netzwerkschnittstelle eth0 muss ggf. an die eigenen Gegebenheiten angepasst werden, bei mir unter VMWare z.B. ens33
  • Je nach Konfiguration der Firewall müssen ev. noch Regeln eingefügt werden um ein- und ausgehende Pakete auf der Schnittstelle eg0 zu akzeptieren, z.B. iptables -A FORWARD -i wg0 -j ACCEPT und iptables -A FORWARD -o wg0 -j ACCEPT
    Die dann in Postown mit -D anstatt -A auch wieder löschen.
  • Die Anweisungen unter PostUp/PostDown können auch, mit Semikolon getrennt, in eine Zeile geschrieben werden. Ansonsten werden die Zeilen in der Reihenfolge in der sie in der Config stehen ausgeführt
Weitere Clients können in zusätzlichen [Peer] Abschnitten eingefügt werden, dabei muss jeweils ein separater Schlüssel und eine eindeutige IP aus dem Wireguard Netz angegeben werden, also z.B.:

Code: Alles auswählen

# Client 2
[Peer]
PublicKey    = < Inhalt von client2.public einfuegen >
PresharedKey = < Inhalt von client2.preshared einfuegen >
AllowedIPs   = 10.99.99.20/32

5. Konfiguration eines Clients
Datei z.B.: /etc/wireguard/client1.conf, ggf. vorher umask 077 setzen

Code: Alles auswählen

[Interface]
Address    = 10.99.99.10/32
DNS        = <IP eines DNS aus dem bereits vorhandenen lokalen Netz>
PrivateKey =  < Inhalt von client1.private einfuegen >

# Daten des VPN Server
[Peer]
Endpoint     = <dyndns Adresse>:51820
PublicKey    = <Inhalt von server.public einfuegen>
PresharedKey = < Inhalt von client1.preshared einfuegen >
AllowedIPs   = 0.0.0.0/0
PersistentKeepalive = 25
  • Die Adresse muss mit der Angabe im [Peer] Abschnitt der Serverkonfiguration übereinstimmen.
  • Es kann auch ein öffentlicher DNS angegeben werden, z.B. wenn im eigenen Netz keiner läuft.
  • Bei AllowedIPs kann auch nur das lokale Netz eingetragen werden, dann gehen alle anderen Daten direkt ins Internet und nicht über das VPN.
  • PersistentKeepalive verhindert, dass die Adresse z.B. von einer Firewall bei Inaktivität getrennt wird, die Zeit in Sekunden ggf. anpassen

6. Starten & Stoppen von Wireguard:

Code: Alles auswählen

systemctl start wg-quick@wg0
stemctl stop wg-quick@wg0

7. Beim Systemstart aktivieren/deaktivieren:

Code: Alles auswählen

systemctl enable --now wg-quick@wg0
systemctl disable --now wg-quick@wg

8. Status der Schnittstelle:
9. Client Konfiguration als QR Code anzeigen (auch im Terminal):

Code: Alles auswählen

apt install qrencode
qrencode -t ansiutf8 < /etc/wireguard/client1.conf
Die Konfiguration kann dann z.B. mit der iPhone App einfach abfotografiert werden
TWS 2500 ID: 145 + 1x TP-UART + 2x DS9490R, VPN geschlossen, Reboot nach Absprache / wiregate198 (im Ruhestand)

franzli
Reactions:
Beiträge: 2
Registriert: Mi Jun 12, 2019 9:00 am

#8

Beitrag von franzli »

Tatsächlich bin ich sehr interessiert, kann Wireguard auf verschiedenen Geräten gleichzeitig verwendet werden?

Ersteller
jockel
Reactions:
Beiträge: 424
Registriert: Mo Aug 13, 2018 6:31 pm
Hat sich bedankt: 193 Mal
Danksagung erhalten: 147 Mal

#9

Beitrag von jockel »

Warum nicht? Ich würde dann jedes Gerät, wie oben beschrieben, als einzelnen Client anlegen.
TWS 2500 ID: 145 + 1x TP-UART + 2x DS9490R, VPN geschlossen, Reboot nach Absprache / wiregate198 (im Ruhestand)

franzli
Reactions:
Beiträge: 2
Registriert: Mi Jun 12, 2019 9:00 am

#10

Beitrag von franzli »

Hört sich gut an, ich möchte es versuchen, aber ich verstehe nicht, was Sie meinen, warum das VPN herunterfahren?
Antworten

Zurück zu „Feature Requests & Diskussionen Timberwolf Allgemein“