[Frage] ssh freetz zu freetz Problem

Anfänger_54

Neuer User
Mitglied seit
1 Dez 2019
Beiträge
11
Punkte für Reaktionen
0
Punkte
1
Ich habe eine mobile Fritzbox 7320 (Wohnwagen) und eine im Im Heimnetz 7270.
Auf beiden Boxen läuft als SSH-Server Dropbear.
Die Mobilbox soll beim Start einen SSH-Tunnel zur Heimbox aufbauen
Wenn ich mich auf der Mobilbox mit ssh als root einlogge und von hier eine SSH-Verbindung
zum Heimnetz aufbaue, geht das ohne Probleme.
Sowohl mit ssh , als auch mit autossh.

Wenn ich aber den Befehl in Freetz:rc.custom oder Freetz:eek:nlinechanged eingebe, funktioniert das nicht.
Um leichter testen zu können, habe ich mir jetzt ein script erstellt.
Da ich auch nichts im Netz gefunden habe, ist das wohl nur für mich ein Problem und die Lösung ganz einfach.
Ich komme aber auf keine Lösung, auch weiss ich nicht warum keine Verbindung aufgebaut wird.


Kann mir jemand helfen?

======================
Script-Aufruf in onlinechanged:
sh /var/media/ftp/USB/ssh_start.sh
_________________________
Script: ssh_start.sh

#!/bin/sh
WATCH_IP="DNS.dd-dns.de"
sleep 2
while ! ping -c 1 $WATCH_IP
do
# echo "keine Verbindung"
sleep 2
done
#echo "Verbindung"
autossh -M 0 -y -i /var/mod/etc/ssh/rsa_host_key -p 59618 -L 5000:127.0.0.1:5000 [email protected]-dns.de
____________________________
Log:
Firmware: 100.06.34 rev38646
freetz-master-20191127-a4a257147
Freetz – Freetz-Logs
onlinechanged.log

1970-01-01 01:01:29 [3983]: [online] approved
1970-01-01 01:01:29 [3983]: [online] executing /etc/onlinechanged/00-get_ip
1970-01-01 01:01:29 [3983]: [online] executing /etc/onlinechanged/webdav_net
1970-01-01 01:01:29 [3983]: [online] * webdav_net online status_onlinev4
1970-01-01 01:01:29 [3983]: [online] executing /tmp/flash/onlinechanged/onlinechanged-cgi
2019-11-28 16:25:41 [3983]: [online] * PING DNS.dd-dns.de (188.98.231.73): 56 data bytes
2019-11-28 16:25:41 [3983]: [online] * 64 bytes from 188.98.231.73: seq=0 ttl=63 time=1.757 ms
2019-11-28 16:25:41 [3983]: [online] * --- DNS.dd-dns.de ping statistics ---
2019-11-28 16:25:41 [3983]: [online] * 1 packets transmitted, 1 packets received, 0% packet loss
2019-11-28 16:25:41 [3983]: [online] * round-trip min/avg/max = 1.757/1.757/1.757 ms
2019-11-28 16:25:41 [3983]: [online] * /usr/bin/ssh: Warning: failed creating //.ssh: Read-only file system
2019-11-28 16:25:41 [3983]: [online] * /usr/bin/ssh:
2019-11-28 16:25:41 [3983]: [online] * Host 'DNS.dd-dns.de' key accepted unconditionally.
2019-11-28 16:25:42 [3983]: [online] * (ecdsa-sha2-nistp256 fingerprint sha1!! 8e:1f:4f:7e:96:3e:ef:7b:97:ec:1e:62:9a:31:c1:f1:40:72:ec:31)
2019-11-28 16:25:43 [3983]: [online] * /usr/bin/ssh: Failed reading termmodes
2019-11-28 16:25:43 [3983]: [online] * /usr/bin/ssh: Connection to [email protected]-dns.de:59618 exited: Failed to set raw TTY mode

2019-11-28 16:25:43 [3983]: [online] finished

2019-11-28 16:30:38 [5376]: [offline] approved
2019-11-28 16:30:38 [5376]: [offline] executing /etc/onlinechanged/00-get_ip
2019-11-28 16:30:38 [5376]: [offline] executing /etc/onlinechanged/webdav_net
2019-11-28 16:30:38 [5376]: [offline] * webdav_net offline status_offline
2019-11-28 16:30:38 [5376]: [offline] executing /tmp/flash/onlinechanged/onlinechanged-cgi
2019-11-28 16:30:38 [5376]: [offline] finished

2019-11-28 16:30:40 [5431]: [online] approved
2019-11-28 16:30:40 [5431]: [online] executing /etc/onlinechanged/00-get_ip
2019-11-28 16:30:40 [5431]: [online] executing /etc/onlinechanged/webdav_net
2019-11-28 16:30:40 [5431]: [online] * webdav_net online status_onlinev4
2019-11-28 16:30:40 [5431]: [online] executing /tmp/flash/onlinechanged/onlinechanged-cgi
2019-11-28 16:30:49 [5596]: [offline] waiting
2019-11-28 16:30:57 [5431]: [online] * ping: bad address 'DNS.dd-dns.de'
2019-11-28 16:31:14 [5431]: [online] * ping: bad address 'DNS.dd-dns.de'
2019-11-28 16:31:29 [5651]: [online] waiting
2019-11-28 16:31:31 [5431]: [online] * ping: bad address 'DNS.dd-dns.de'
2019-11-28 16:31:33 [5431]: [online] * PING DNS.dd-dns.de (188.98.231.73): 56 data bytes
2019-11-28 16:31:33 [5431]: [online] * 64 bytes from 188.98.231.73: seq=0 ttl=63 time=1.625 ms
2019-11-28 16:31:33 [5431]: [online] * --- DNS.dd-dns.de ping statistics ---
2019-11-28 16:31:33 [5431]: [online] * 1 packets transmitted, 1 packets received, 0% packet loss
2019-11-28 16:31:33 [5431]: [online] * round-trip min/avg/max = 1.625/1.625/1.625 ms
2019-11-28 16:31:33 [5431]: [online] * /usr/bin/ssh: Connection to [email protected]-dns.de:59618 exited: Connect failed: Connection refused

2019-11-28 16:31:33 [5431]: [online] finished

2019-11-28 16:31:34 [5651]: [online] approved
2019-11-28 16:31:34 [5651]: [online] executing /etc/onlinechanged/00-get_ip
2019-11-28 16:31:34 [5651]: [online] executing /etc/onlinechanged/webdav_net
2019-11-28 16:31:34 [5651]: [online] * webdav_net online status_onlinev4
2019-11-28 16:31:34 [5651]: [online] executing /tmp/flash/onlinechanged/onlinechanged-cgi
2019-11-28 16:31:36 [5651]: [online] * PING DNS.dd-dns.de (188.98.231.73): 56 data bytes
2019-11-28 16:31:36 [5651]: [online] * 64 bytes from 188.98.231.73: seq=0 ttl=63 time=1.381 ms
2019-11-28 16:31:36 [5651]: [online] * --- DNS.dd-dns.de ping statistics ---
2019-11-28 16:31:36 [5651]: [online] * 1 packets transmitted, 1 packets received, 0% packet loss
2019-11-28 16:31:36 [5651]: [online] * round-trip min/avg/max = 1.381/1.381/1.381 ms
2019-11-28 16:31:36 [5651]: [online] * /usr/bin/ssh: Connection to [email protected]-dns.de:59618 exited: Connect failed: Connection refused

2019-11-28 16:31:36 [5651]: [online] finished

2019-11-28 16:31:37 [5596]: [offline] approved
2019-11-28 16:31:37 [5596]: [offline] executing /etc/onlinechanged/00-get_ip
2019-11-28 16:31:37 [5596]: [offline] executing /etc/onlinechanged/webdav_net
2019-11-28 16:31:37 [5596]: [offline] * webdav_net offline status_offline
2019-11-28 16:31:37 [5596]: [offline] executing /tmp/flash/onlinechanged/onlinechanged-cgi
2019-11-28 16:31:37 [5596]: [offline] finished

====================
 
Probier's mal mit -T als zusätzliche Option ... ein "tunnel only"-Daemon braucht kein Terminal.

Und beim Aufruf aus rc.custom oder onlinechanged gibt es auch genau dieses nicht für den Parent bzw. der Parent-Prozess wird abgeräumt und der SSH-Tunnel wohl gleich mit, wenn das durch ist.

Ob bei der Verwendung von autossh auch -f als Option für den (Dropbear-)SSH-Client einen Sinn ergibt, weiß ich gerade nicht ... dazu müßte ich mir erst ansehen, wie autossh die Kindsprozesse startet (und ob die ggf. schon von diesem Programm "detached" werden).

Wenn das aber weiterhin abgeräumt wird (und nicht länger am Terminal krankt - sprich: wenn der Tunnel wenigstens mal aufgebaut wird beim Start ohne eigene Session aus einem der beiden möglichen Skripte), dann wäre ein "run in background" mein nächster Tipp, weil dann wohl vom autossh keine Vorkehrungen getroffen würden bzw. beim direkten Aufruf von ssh als Client aus einer anderen Session heraus, würde ich das in jedem Falle mit angeben - denn ich wette, daß beim Beenden der (interaktiven) SSH-Session auch der Tunnel abgeräumt wird und Du das nur nicht bemerkt/getestet hast.
 
Hallo,
danke für die schnelle Hilfe.
Die Option -f kannte ich schon, hat aber nichts gebracht.
Ich werde mal -T testen und berichten.

Helmut
 
hat aber nichts gebracht.
Daß diese Option hier alleine nichts bringen dürfte, ging (hoffe ich jedenfalls) ja schon aus meiner Antwort hervor, wenn man diese genau liest ... da stand ja, daß man das mit dem "run in background" erst dann sinnvoll testen kann, wenn der Tunnel wenigstens mal aufgebaut wird, was hier ja - ersichtlich - nicht der Fall ist, weil der Client keinen lokalen Terminal-Mode setzen kann (in "cli_tty_setup()" - daher kommt ja die Fehlernachricht).

Da das dann gar nicht erst aufgerufen wird (https://github.com/mkj/dropbear/blob/master/cli-chansession.c#L374), wenn cli_opts.wantpty nicht gesetzt ist und die Option -T genau das eigentlich bewirken soll (https://github.com/mkj/dropbear/blob/master/cli-runopts.c#L227), wäre hier die "richtige Reihenfolge" beim Testen wohl sinnvoller/aussagekräftiger gewesen.

Deshalb schrieb ich auch "mein nächster Tipp" und "und [wenn es] nicht länger am Terminal krankt", weil das (ggf., wenn meine mangelnden Kenntnisse der Quellen für autossh mir hier keinen Streich spielen - der "usage screen" liefert dazu keine weiteren Erkenntnisse und beim direkten Aufruf von ssh gilt das erst recht) der nächste zu erwartende Fehler ist, wenn man keine passenden Vorkehrungen dafür trifft, daß der gestartete Tunnel vom Parent-Process "detached" weiterläuft, auch wenn dieser beendet wurde.
 
Hallo Peter,

Ich ich hatte einiges nachzulesen, um den Sinn deiner Posts zu „er-ahnen“.
Es funktioniert jetzt mit folgendem script:

_______________________________________
#!/bin/sh
WATCH_IP="DNS.dd-dns.de"
#while [ true ]
#do
while ! ping -c 1 $WATCH_IP
do
echo "keine Verbindung"
sleep 2
done
echo "Verbindung"
autossh -M 0 -i /var/mod/etc/ssh/rsa_host_key -N -y -f -p 59618 -L 5000:127.0.0.1:5000 [email protected]-dns.de
_______________________________________
Danke für Deine Zeit und Deine Hilfe
Helmut
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.