Appearance
WireGuard
WireGuard ermöglicht den verschlüsselten Fernzugriff auf das IT-System des Wohnmobils über das Internet.
Auf dem Raspberry Pi tsg-bobil läuft WireGuard direkt unter Linux und nicht als Docker-Container.
Aufgabe
Befindet sich das Wohnmobil außerhalb des Heimnetzes und verfügt über eine Internetverbindung, baut tsg-bobil selbstständig eine WireGuard-Verbindung zum WireGuard-Server im Heimnetz auf.
Dadurch ist der Raspberry Pi über eine feste Adresse im WireGuard-Netz erreichbar.
Verbindungsaufbau
Die Verbindung wird von tsg-bobil zum Heimnetz aufgebaut.
Dadurch ist keine eingehende Portfreigabe am Internetzugang des Wohnmobils erforderlich.
text
Heimnetz
│
▼
WireGuard-Server
│
│ verschlüsselter
│ WireGuard-Tunnel
│
Internet
│
▼
tsg-bobil
WireGuard-Client
10.0.0.7
│
▼
Womo-Netz
192.168.8.0/24Zugriff auf den Raspberry Pi
Ist die WireGuard-Verbindung aktiv, kann tsg-bobil von anderen entsprechend eingerichteten WireGuard-Teilnehmern über folgende Adresse erreicht werden:
10.0.0.7
Damit können auch die auf dem Raspberry Pi laufenden Dienste über den VPN-Tunnel erreicht werden.
Beispiele:
| Dienst | Adresse über WireGuard |
|---|---|
| Womo-Handbuch | http://10.0.0.7:8000 |
| Node-RED | http://10.0.0.7:1880 |
| Zigbee2MQTT | http://10.0.0.7:8080 |
| InfluxDB | http://10.0.0.7:8086 |
| Grafana | http://10.0.0.7:3000 |
| SSH | 10.0.0.7:22 |
Erreichbarkeit▶
Für den Fernzugriff benötigt das Wohnmobil eine Internetverbindung.
Diese kann beispielsweise über einen Smartphone-Hotspot und den GL.iNet-Router bereitgestellt werden.
Für den normalen Zugriff innerhalb des Womo-Netzes ist WireGuard nicht erforderlich.
SSH über WireGuard
Über den WireGuard-Tunnel ist auch ein SSH-Zugriff auf den Raspberry Pi möglich.
Damit kann tsg-bobil auch aus der Ferne administriert werden, ohne den SSH-Port des Raspberry Pi direkt über das Internet erreichbar zu machen.
Konfiguration
Die WireGuard-Konfiguration auf tsg-bobil befindet sich unter:
/etc/wireguard/wg0.conf
Der Status der Verbindung kann auf dem Raspberry Pi mit folgendem Befehl geprüft werden:
bash
sudo wg showEine funktionierende Verbindung ist unter anderem an einem aktuellen Handshake mit dem WireGuard-Server zu erkennen.
Die Erreichbarkeit des Servers kann beispielsweise geprüft werden mit:
bash
ping -c 4 10.0.0.1WireGuard-Schlüssel▶
Die WireGuard-Konfiguration enthält private kryptografische Schlüssel.
Private Keys dürfen nicht im Handbuch oder im Git-Repository gespeichert werden.
Auch bei Sicherungskopien der WireGuard-Konfiguration ist darauf zu achten, dass diese nicht öffentlich zugänglich sind.