ssh-tunnel beim Start der fritz!box einrichten

choff

Neuer User
Mitglied seit
14 Nov 2012
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich habe folgendes Problem mit der aktuellen stable(1.2)-Version von Freetz:

Ich würde gerne automatisch einen ssh-Tunnel zu einem Server im Internet aufbauen, sobald meine Fritz!Box startet.

Daher habe ich meine /var/flash/debug.cfg so angepasst, dass da jetzt folgendes drinsteht:
Code:
#!/bin/sh
/usr/bin/ssh -TNf -i /tmp/flash/dropbear/rsa_host_key -L 192.168.178.1:1631:localhost:631 -g -R 9100:192.168.178.20:9100 -K $(( 10 * 60 )) root@[mein vserver].com &> /tmp/log &

Was genau der SSH-Tunnel macht, ist nicht so wichtig. Das entscheidende ist, dass anscheinend keine Internetverbindung aufgebaut wird, sobald sich das Skript mit dem v-Server im Internet verbinden will.

Stattdessen sehe ich folgendes in der Datei /tmp/log:
Code:
/usr/bin/ssh: Exited: Error resolving '[mein vserver].com' port '22'. Name or service not known

Ich hätte eigentlich erwartet, dass die Fritz!Box eine Internetverbindung aufbaut, sobald ich mich über das Skript mit dem vServer verbinden will. Genau das scheint aber nicht zu passieren.

Ich habe auch schon probiert, den ssh-tunnel aus der /tmp/flash/rc.custom heraus zu starten. Auch das hat nicht funktioniert und es kam derselbe Fehler wie zuvor.

Daher jetzt meine Frage: Wie kann ich aus meinem Skript heraus eine Internetverbindung aufbauen, so dass sich anschließend auch mein Skript mit dem vserver im Internet verbinden kann?

Vielen Dank für jede Antwort!

Viele Grüße,

Christian
 
...sobald sich das Skript mit dem v-Server im Internet verbinden will.
Hast Du mit dem Scripteintrag, aus der Konsole (der Box) schon eine Verbindung (Tunnel) zum sshd-Server herstellen können?
 
Zu dem Zeitpunkt, an dem diese Skripte ausgeführt werden, ist die Box noch nicht online.
Die Box baut sowieso eine Internet-Verbindung auf, nicht, weil Du einen ssh Befehl ausführst, der in der original Firmware gar nicht vorhanden ist.
 
Hallo,

vielen Dank für Deine Antwort.

Zu dem Zeitpunkt, an dem diese Skripte ausgeführt werden, ist die Box noch nicht online.
Die Box baut sowieso eine Internet-Verbindung auf, nicht, weil Du einen ssh Befehl ausführst, der in der original Firmware gar nicht vorhanden ist.

Gibt es denn eine Möglichkeit, die Internetverbindung manuell aus dem Skript heraus aufzubauen?

Wenn nicht, dann wäre eine weitere Variante, das Skript erst dann laufen zu lassen, sobald eine Internetverbindung besteht. Gibt es da irgendwelche Code-Stellen oder Shell-Skripte, in die man sich einhängen könnte?

Vielen Dank für jede Antwort!

Viele Grüße,

Christian
 
Mit der Fritzbox habe ich sowas noch nicht gemacht, auf dem WD-TV und Sat-recievern habe ich mir in solchen Fällen immer folgendermaßen geholfen:
Ich habe ein eigenes script geschrieben, welches mittels "wait" so lange wartet bis die Netzwerkverbindung steht und dann den Befehl ausfürt der die Verbindung benötigt (bei mir ein NFS-mount ; bei Dir also der Tunnelaufbau), Diese Script habe ich dann aus debug.cfg mit "&" gestartet, dadurch wartet dieses skript im Hintergrund und erfüllt seine Aufgabe erst später, durch das "&" wird das debug.cfg-script aber nicht blockiert sondern läuft zu ende und läßt die Fritzbox fertig booten bzw. die Internetverbindung aufbauen.
Teste das aber erstmal mit nem anderen Skriptnamen als debug.cfg, damit du nicht durch eien Fehlversuch ein debug.cfg erzeugst welches sich aufhängt und damit das booten der Fritzbox unmöglich macht (in einem solchen fall hilft dann nur noch ein recovery (sollte aber bgekannt sein wenn man schon am debug.cfg rumbastelt)).
.
 

Statistik des Forums

Themen
246,424
Beiträge
2,251,818
Mitglieder
374,151
Neuestes Mitglied
JackNeale
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.