Digital Eliteboard

Registriere dich noch heute kostenloses um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereiche, welche für Gäste verwert bleiben

Einrichtung von Wireguard unter Freetz

hoewer

Ist gelegentlich hier
Mitglied seit
2. Oktober 2018
Beiträge
31
Erhaltene Reaktionen
12
Hier eine Anleitung für die Einrichtung von Wireguard - speziell für einen Ubuntu-Client.
Für Android, Windows, Apple usw. gibt es allerdings jeweils Clients, deren Konfiguration genauso aussieht.
Die Entwickler raten derzeit (Stand 11/18) jedoch ausdrücklich davon ab, den Windows-Client zu nutzen, u.a. da er nicht Open-Source ist:
"you are strongly advised to stay away from Windows clients that are not released from this site, as they may be dangerous to use"
Es besteht die Möglichkeit, dass die Ablehnung allein auf Basis Software-ideologischer oder persönlicher Differenzen der Entwickler basiert, dafür sprechen einige Diskussionen in Netz, ich möchte hierzu jedoch keine Meinung abgeben. Meines Wissens ist der Quellcode inzwischen offengelegt ( ), dennoch besteht die Warnung auf den Wireguard-Seiten fort. Ich kann allerdings versichern, dass der Client (gut) funktioniert. Ich habe aber weder den Quellcode studiert, noch eine Prüfung auf mögliche schädliche Nebenwirkungen durchgeführt.
Edit 08/2019: Es gibt inzwischen einen OpenSource-Client für Windows von den WireGuard-Entwicklern selbst. Er funktioniert einwandfrei, auch wenn er derzeit noch nicht finalisiert ist.

DIe Installation von Wireguard unter Ubuntu ist ziemlich leicht:
$ sudo add-apt-repository ppa:wireguard/wireguard
$ sudo apt-get update
$ sudo apt-get install wireguard


Im nächsten Schritt folgt die Konfiguration, die ist deutlich einfacher als bei OpenVPN, da je Gerät nur ein privater und ein öffentlicher Schlüssel benötigt werden.
Die benötigten base64-encoded Keys werden unter Ubuntu mit dem wg(8) utility erstellt (siehe ).
Unter den anderen Betriebssystemen sollten das die jeweiligen Clients können.

Ich selbst habe den Server z.B. auf den Freetz-Images von Prisrak aus diesem Forum laufen lassen.
Auf dem diesem Server (also der Fritzbox) kann die Konfiguration dann so aussehen:
Code:
[Interface]
PrivateKey = <hier ein oben generierter private Key für die Fritzbox, der hat mit den anderen Keys der FB nichts zu tun>=
ListenPort = 51820

[Peer] # Mein Gerät No.1
PublicKey = <hier der public Key des 1. Clients>=
PresharedKey = <optional: für zusätzliche Sicherheit kann hier noch ein PreShared Key je Gerät angegeben werden>=
AllowedIPs = 192.168.200.2/32 # Zugelassene IP des Clients

[Peer] # Mein Gerät No.2
...usw.
Zusätzlich muss bei Freetz der Adresskreis unter "IP-Adresse" angegeben werden, im obigen Fall z.B. "192.168.200.1/24". Achtung: Dieses Subnetz ist NICHT das Subnetz eures Heimnetzes, sondern ein privates, ansonsten nicht genutztes Subnetz. Dies gilt entsprechend für alle Erwähnungen des 200er Subnetzes in diesem Post.

Ganz wichtig: wie bei OpenVPN muss eine Portweiterleitung auf die FB selbst eingerichtet werden, z.B. manuell in der Datei /var/flash/ar7.cfg:
ACHTUNG: WER IM UMGANG MIT VI UND DEN SYSTEMDATEIEN DER FB NICHT SICHER IST, SOLLTE DAS LASSEN.
FEHLER KÖNNEN DIE FUNKTION DER FB BEEINTRÄCHTIGEN


cat /var/flash/ar7.cfg > /var/tmp/ar7.cfg
vi /var/tmp/ar7.cfg

im Abschnitt:
voip_forwardrules
den Eintrag
"udp 0.0.0.0:51820 0.0.0.0:51820";
zur Liste hinzufügen, (Semikolon am Ende nur, wenn es der letzte Eintrag der Liste ist, sonst Komma)
abspeichern. Danach zeitnah:
ctlmgr -s
voipd -s
cp /var/tmp/ar7.cfg /var/flash/ar7.cfg
reboot


Zum Einrichen eines Port-Forwarding gibt es sonst auch noch diesen Thread Port-Forwarding unter Freetz einrichten für CS, ich kann allerdings nicht sagen, ob die dort gemachten Empfehlungen aktuell sind und funktionieren.

Jetzt muss noch der/die Clients konfiguriert werden
unter Ubuntu: /etc/wireguard/wg0.conf
Code:
[Interface]
PrivateKey = <private Key des Clients>=
ListenPort = <beliegiger Port, auf dem ein Verbindung von anderen aufgebaut werden könnte, falls man dies zulässt>
DNS = <z.B. IP-Adresse der Fritzbox>
Address = 192.168.200.2/24 # Für obiges Beispiel der Server-Konfiguration

[Peer]
PublicKey = <public Key des Servers>=
PresharedKey  =  <der PreShared Key von oben, falls genutzt>=
AllowedIPs = 0.0.0.0/0 # Alle Anfragen werden über VPN leiten
#AllowedIPs = 192.168.178.0/24,192.168.200.0/24 # Nur Anfragen ins Heimnetz werden über das VPN geleitet
Endpoint = <Deine externe IP bzw. Dein DynDNS-Name>:51820
PersistentKeepalive = 25
Da ich persönlich nicht ununterbrochen mit VPN unterwegs bin haben ich ein kleines Script zum Starten/Stoppen des VPN:
Bash:
#!/bin/bash
pause() {
echo " "
echo -n "Press 'x' to terminate VPN session..."
while true; do
   read -n1 -r -s
   [[ $REPLY == 'x' ]] && break
done
echo
echo "Continuing ..."
}

sudo wg-quick up /etc/wireguard/wg0.conf
pause
sudo wg-quick down wg0
Viel Spass mit dem neuen, schlanken VPN.
 
Zuletzt bearbeitet:

GoldMan

Newbie
Mitglied seit
15. November 2009
Beiträge
4
Erhaltene Reaktionen
0
Vielen dank für die Anleitung.

Leider wird mir nicht klar, in welcher Datei ich die Einstellung auf dem Fritzbox hinterlegen muss.

Hier ein paar Daten von mein Setup
Code:
export FREETZ_INFO_BOXTYPE='7360_v2'
export FREETZ_INFO_FIRMWAREVERSION='06.85'
export FREETZ_INFO_SUBVERSION='freetz-devel-15331M'
export FREETZ_INFO_LANG='de'
export FREETZ_INFO_MAKEDATE='20190329-190103'
export FREETZ_INFO_IMAGE_NAME='von_Prisrak_MI_7360_v2_06.85-freetz-devel-15331M.de_20190329-190103.image'
export FREETZ_INFO_COMMENT='von_Prisrak_MI'
export FREETZ_INFO_EXTERNAL_FILES='usr/share/usb.ids
Code:
root@fritz:/var/mod/root# modprobe wireguard
modprobe: module wireguard not found in modules.dep
 
Zuletzt bearbeitet:

rolu2

Moderator
Teammitglied
Mitglied seit
16. November 2009
Beiträge
8.478
Erhaltene Reaktionen
3.959
In dem installierten Image ist das
Code:
syslogd-cgi-0.2.3
inetd-0.2
authorized-keys-0.1
dropbear-2019.78
ccid-1.4.30
curl-7.61.1
haserl-0.9.35
mod-1.0
modcgi-0.3
nano-2.4.3
nano-shell-0.1
opendd-0.7.9
openssh-7.9p1
pcsc-lite-1.8.24
usbids-0.0
usbutils-007
vsftpd-3.0.3
wget-1.19.5
oscam-1.5.0
Digital_Eliteboard_Skin
Keywelt_Skin
Nachtfalke_Skin
Nachtfalke_old_Skin
enthalten

Somit kein Wireguard
 
Oben