Dauerhafter SSH Tunnel / Wireguard / etc?

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
reox
Beiträge: 2459
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von reox » 17.05.2017 16:38:12

Ich hab einen Server hinter einem NAT router stehen, der normalerweise durch einen port forward erreichbar ist. Nun ist durch Umstände der Portforward kaputt gewesen und ich konnte nicht mehr auf den Server zugreifen. Nun hatte ich mir überlegt, dass für solche Zwecke wohl ein ssh remote port forward ganz sinnvoll wäre, um im Notfall eben doch noch auf die Maschine zu kommen - einen Server der gut Verfügbar ist wäre ja vorhanden, den könnte man dafür verwenden.
Nun ist aber so ein Portforward auch nicht immer ganz stabil - abhilfe schaffen wohl tools wie Debianautossh oder Debiansidedoor. Jetzt hab ich auch von Debianwireguard-dkms gehört, das ein einfaches VPN sein soll, leider derzeit nur in sid vorhanden. Hab allerdings auch mit dem Tool keine Erfahrungen und die Website sagt "You should not rely on this code"...

Gibt es irgendein Tool, welches für solche Zwecke gut geeignet ist? Was sind eure Erfahrungen mit den Tools?

uname
Beiträge: 12046
Registriert: 03.06.2008 09:33:02

Re: Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von uname » 17.05.2017 22:21:42

Dauerhaft würde ich das nicht machen. Vielleicht per Cron alle 10 Minuten nach einem HTTP-Objekt suchen. Bei Bedarf Webseite erstellen, max. 10 min warten und Remote-Tunnel startet automatisch.

reox
Beiträge: 2459
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von reox » 17.05.2017 23:08:23

Aus Sicherheitsgründen? Oder weil der Tunnel einfach instabil sein kann? Ich hatte mal einen ssh tunnel am laufen und das hat nie so wirklich funktioniert...
Die Idee ist gut, ich glaube ich werde das so machen!

Benutzeravatar
catdog2
Beiträge: 5352
Registriert: 24.06.2006 16:50:03
Lizenz eigener Beiträge: MIT Lizenz

Re: Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von catdog2 » 18.05.2017 01:34:53

Aus Sicherheitsgründen? Oder weil der Tunnel einfach instabil sein kann? Ich hatte mal einen ssh tunnel am laufen und das hat nie so wirklich funktioniert...
Was soll daran instabil sein? Du musst nur die timeouts runter setzen damit sich ssh schnell beendet wenn die Verbindung stirbt oder nicht aufgebaut werden kann und den Prozess neu starten lassen. Mit systemd geht sowas recht schön auch ohne zusätzliche Tools:

Code: Alles auswählen

[Unit]
Description=ssh tunnel
After=network.target

[Service]
User=someuser
Group=somegroup
ExecStart=/usr/bin/ssh -i pfadzumkey -o ExitOnForwardFailure=yes -o LogLevel=VERBOSE -o ServerAliveCountMax=5 -o ServerAliveInterval=2 -o ConnectTimeout=10 <tunneldinge> user@host
Restart=always
RestartSec=15s
StartLimitBurst=10
StartLimitInterval=10

[Install]
WantedBy=multi-user.target
Jetzt hab ich auch von Debianwireguard-dkms gehört, das ein einfaches VPN sein soll, leider derzeit nur in sid vorhanden. Hab allerdings auch mit dem Tool keine Erfahrungen und die Website sagt "You should not rely on this code"...
Es gibt genug VPN Software (z.B. openvpn) welche kein eigenes Kernel Modul benötigt und gut abgehangen ist…
Unix is user-friendly; it's just picky about who its friends are.

uname
Beiträge: 12046
Registriert: 03.06.2008 09:33:02

Re: Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von uname » 18.05.2017 08:16:19

Warum eine VPN-Software? SSH bringt doch alles mit. Lese [1] und kehr den Weg einfach um. Geht bestimmt. Statt wie beschrieben Debiansshuttle (nur SOCKS) kannst du vielleicht auch nur SSH nutzen wie z.B. die Option "-w local_tun[:remote_tun]" . Wie geschrieben würde ich diesen Not-Tunnel nicht durchgängig offen halten.

[1] http://www.linux-community.de/Internal/ ... d-Sshuttle

reox
Beiträge: 2459
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von reox » 18.05.2017 21:21:17

VPN ist mir eigentlich zu viel, wireguard schaut ja vom konfigurationsaufwand her sehr einfach aus, aber scheint ja noch in entwicklung zu sein.
Es reicht ja wenn die Maschine irgendwie über ssh erreichbar ist - zur not kann man ja über ssh auch noch was tunneln. sshuttle kenne ich, aber einen socks proxy brauche ich auch eher nicht. Wie gesagt ein `ssh -R 12345:localhost:22 user@immererreichbarekiste` reicht vollkommen aus.

Wegen stabilität: Ich hatte mal vor ewigen Zeiten einen SSH Tunnel von einem Rechner der hinter NAT war. Das hat so überhaupt nicht hingehauen. Der tunnel ist alle paar minuten weg gewesen. Ja vermutlich hätte man die timeouts besser setzen müssen.
Gibt es nicht sogar ein programm das es erlaub ssh sessions wiederaufzunehmen, falls die mal kaputt geht (und sogar wenn sich die Verbindung ändert?)

uname
Beiträge: 12046
Registriert: 03.06.2008 09:33:02

Re: Dauerhafter SSH Tunnel / Wireguard / etc?

Beitrag von uname » 19.05.2017 08:34:49

Es geht nur um einen Notfall-Weg. Standardmäßig nutzt du Forwarding in das Netzwerk.
Falls du die "immererreichbarekiste" administrieren darfst, dann mach es doch ganz einfach:
Standardmäßig horcht der zugehörige SSH-Server auf z.B. 22. Dein SSH-Client im geNATteten Netz versucht nun einfach z.B. alle 10 Minuten sich mit einen SSH-Server auf Port 2222 zu verbinden.

Code: Alles auswählen

ssh -R 12345:localhost:2222 user@immererreichbarekiste
Das geht natürlich in die Hose. Prüfe, dass das nicht zu viel Overhead erzeugt.
Wenn du nun die Verbindung wirklich brauchst, aktivierst du einfach auf "immererreichbarekiste" den SSH-Server zusätzlich auf Port 2222. Teste den Fall, damit die Verbindung nicht versehentlich mehrfach aufgebaut wird.

Falls du es als Standard-Weg verwenden willst, versuche sowas wie Respawn mit Systemd abzubilden siehe weiter oben. Vielleicht läuft das ja zuverlässig.

Antworten