[gelöst]fritzbox über ssh zu einem server connecten lassen

god of dream

Neuer User
Mitglied seit
6 Jul 2006
Beiträge
18
Punkte für Reaktionen
0
Punkte
0
Ich will meine Fritzbox über den ssh-clienten im DS-mod mit einem script auf meinen server einloggen lassen.
Mein Problem:
"Passwortschutz"
Code:
ssh [email protected] ;
"Passwort"
Ihr könnt sehen das mein server im Intranet ist,
deswegen wäre eine Umstellung des ssh-server auf password-los
für mich kein verlust wenn ich wüsste wie das geht.
Wie soll ich mein script aufbauen?

Bitte macht mich nicht fertig wenn das eine noob-frage ist.
 
Zuletzt bearbeitet:
dropbear unterstützt kein "Passwortlos".
Du müsstest das mit ssh-Schlüssel regeln.
D.h. die Schlüssel (Private/Public-Keys) ersetzen die Passwortabfrage.
 
xsapling schrieb:
dropbear unterstützt kein "Passwortlos".
Du müsstest das mit ssh-Schlüssel regeln.
D.h. die Schlüssel (Private/Public-Keys) ersetzen die Passwortabfrage.

Ich hab bei meinem Server
Code:
ssh-keygen -t rsa
mit root durchgeführt und id_rsa und id_rsa.pub bekommen.
die id_rsa.pub habe ich beim server in /root/id_rsa.pub und /root/authorized_keys gespeichert
die id_rsa habe ich der Fritzbox in den ordner:
Code:
/var/tmp/flash/.ssh
gelegt und
Code:
/ # modsave
durchgeführt
aber ich bekomme weiterhin die password-frage bei ssh:
Code:
/ # ssh [email protected]
Password:

könntest du mir sagen wo ich die dann bei der fritzbox speichern soll
oder was nicht richtig ist?

Bitte hilft mir ich sitze nun berreits insgesamt seit 40 stunden am pc um eine lösung zu finden und habe versucht über telnet und wget alternativen zu finden.

MfG.
God of Dream
 
Dein Problem hatte ich auch:
Der ssh-private Key von openssh ist nicht als dropbear-privatekey nutzbar.
Du musst diesen erst Umwandeln.
 
Hi, bei dropbear ist ein Konvertierungsprogramm dabei, dass Schlüssel vom openssh- ins dropbear-Format übersetzen kann (dropbearconvert). Das ist beim ds-mod nicht dabei (weil man es ja nur ganz selten braucht; sonst verbraucht es nur Platz). Du kannst dir das aber einfach für deinen Desktop-Rechner installieren.

Andreas
 
@ Andreas
Vielen Dank für den Tipp.

nun bekomme ich die meldung:
Code:
# ./dropbearconvert openssh dropbear /root/.ssh/id_rsa /id_rsa_dropbear
Error: encrypted keys not supported currently
Error reading key from '/root/.ssh/id_rsa'

kann das vielleicht an dem -t liegen?
Code:
ssh-keygen -t rsa
 
Zuletzt bearbeitet:
am einfachsten duerfte folgendes sein (auf der box):

# dropbearkey -t rsa -f .ssh/id_rsa
(public key wird ausgegeben, nach ~/.ssh/authorized_hosts auf dem server cut'n'pasten)
# ssh -i .ssh/id_rsa server
(sollte login ohne passwort ergeben)
 
@ linuxservice
Diese einfache Lösung ist mir nicht in den Kopf gekommen.
Danke für diese geniale einfache Lösung.
mit:
Code:
# cd /var/tmp
# dropbearkey -t rsa -f .ssh/id_rsa
(public key nach ~/.ssh/authorized_keys auf den server cut'n'pastet)
# ssh -i /var/tmp/.ssh/id_rsa linuxserver
Es klappt hervorragend nun das noch in den callmonitor einfügen und ich kann meinen Server per Mobiltelefon ein- und ausschalten:p
 
Anstatt sich per SSH als root einzuloggen empfehle ich dir unbedingt, dich als anderen Nutzer mit weniger Priviligien einzuloggen, und dann ggf. mit einem 'su root'+Passwort root-Rechte zu schaffen. Sollte nämlich jemand an dein Keyfile kommen, hat er sofort root-Rechte.

die id_rsa.pub habe ich beim server in /root/id_rsa.pub und /root/authorized_keys gespeichert
Benutzt du auf deinem Server als SSH-Server OpenSSH? Dann müssen die Dateien sich auf jeden Fall im Heimatverzeichnis im Ordner .ssh befinden (~/.ssh/authorized_keys).

Dein Problem hatte ich auch: Der ssh-private Key von openssh ist nicht als dropbear-privatekey nutzbar. Du musst diesen erst Umwandeln.
... oder einfach auf der Fritzbox die Keys direkt erstellen, wie es sich eigentlich auch "gehört". Erst dann ist ein Einloggen mit "ssh root@server" möglich, ansonsten ist immer der Angabe des Keyfiles nötig ("ssh -i keyfile root@server). Deshalb müsste der von Linuxservice eingeschlagene Weg funktionieren:
Code:
# dropbearkey -t rsa -f ~/.ssh/id_rsa
Und public key in die ~/.ssh/authorized_keys auf dem Server mit aufnehmen.
Dann müsstest du mit
Code:
ssh root@server
connecten können (oder halt auch mit expliziter Angabe des Keyfiles, wie von Linuxservice vorgeschlagen:
Code:
# ssh -i .ssh/id_rsa server
 
Zuletzt bearbeitet:
Mist, zu langsam ;).

So wie ich das sehe, gehen die Einstellungen nach dem nächsten Reboot der Fritzbox verloren. Deshalb müsste folgendes besser sein:
Code:
# dropbearkey -t rsa -f ~/.ssh/id_rsa
(public key nach ~/.ssh/authorized_keys auf den server cut'n'pastet)
# ssh -i ~/.ssh/id_rsa linuxserver
(oder ssh root@linuxserver)

Mit eurer Erlaubnis würde ich gerne die Ergebnisse dieses Thread im Wiki veröffentlichen und für die Ewigkeit festhalten ;):
http://wiki.ip-phone-forum.de/software:ds-mod:pakete:dropbear
 
@Gayson
Danke für die Warnung, aber ich habe dem ssh-server bloß die ip der Fritzbox freigegeben und die Fritzbox ist auch nur über ssh(mit passwort) erreichbar.
Wie meint ihr, ist doch sicher genug oder?
Das einzige womit ich mir sorgen mache sind werbeanrufe und mein server schaltet sich ein oder aus:noidea: stört ja nicht oder :eek:

nö mach mal das wird vielen helfen.
 
Danke für die Warnung, aber ich habe dem ssh-server bloß die ip der Fritzbox freigegeben und die Fritzbox ist auch nur über ssh(mit passwort) erreichbar.
Wie meint ihr, ist doch sicher genug oder?
Ja, müsste okay so sein.

Das einzige womit ich mir sorgen mache sind werbeanrufe und mein server schaltet sich ein oder aus stört ja nicht oder
Ich versteh nicht so ganz, was du machen möchtest, soweit habe ich das verstanden: Dein Server steht hinter der Fritzbox im lokalen LAN, und du möchtest von irgendwo anders SSH-Zugriff auf deinen (evtl. ausgeschalteten) Server haben. Dazu weckst du deinen Server per Telefonanruf, und greifst dann mit einem SSH-Client auf die Fritzbox zu, welche dir Zugriff auf den Server verschafft. Oder wie willst du das nutzen?

So wie ich das sehe, gehen die Einstellungen nach dem nächsten Reboot der Fritzbox verloren
Hast du das gelesen?
 
Gayson schrieb:
Mist, zu langsam ;).

So wie ich das sehe, gehen die Einstellungen nach dem nächsten Reboot der Fritzbox verloren. Deshalb müsste folgendes besser sein:
[/url]

Nicht unbedingt.
Wenn du "modsave flash" ausführen würdest, dann blieben die Dateien auch nach dem reboot erhalten!
Ich habe meinen private key in /tmp/flash abgespeichert und dann eben "modsave flash" ausgeführt.
 
man kann sich natuerlich auch gleich den public key zum existierenden host key ausgeben lassen und den in authorized_keys verwenden:

dropbearkey -y -f /var/mod/etc/ssh/rsa_host_key

ohne explizite angabe der identity verwendet der dropbear-ssh-client aber keine, um das -i (in diesem fall dann -i /var/mod/etc/ssh/rsa_host_key) kommt man also nicht rum.
 
Okay, da wirst du Recht haben, insbesondere wird mein Vorschlag auch nicht klappen. Da jedoch ~/.ssh -> /tmp/flash/.ssh dürfte das nun richtig sein:
Code:
# dropbearkey -t rsa -f ~/.ssh/id_rsa
(public key nach ~/.ssh/authorized_keys auf den server cut'n'pastet)
[COLOR="Red"]# modsave flash[/COLOR]
# ssh -i ~/.ssh/id_rsa linuxserver
(oder ssh root@linuxserver)

Soweit ich das verstanden habe, dürfte ein 'modsave flash' bei
Code:
# dropbearkey -t rsa -f /var/tmp/.ssh/id_rsa
nichts bringen, oder?
 
Code:
dropbearkey -y -f /var/mod/etc/ssh/rsa_host_key
Entspricht das einem 'cat rsa_public_key'? Wenn ja, brauch man dies nur, falls man einen private key ohne public key hat, oder?

Code:
ohne explizite angabe der identity verwendet der dropbear-ssh-client aber keine, um das -i (in diesem fall dann -i /var/mod/etc/ssh/rsa_host_key) kommt man also nicht rum.
Das ist ja schade, also wird der bei einem 'ssh root@linuxserver' immer nach dem Passwort fragen, obwohl eine ~/.ssh/id_rsa vorliegt?

@buehmann: Danke
 
Viele verstehen nicht was das ganze bezwecken soll oder wofür ich das brauche. Also hier eine komplete zusammenstellung:
Fritzbox->über Callmonitor:Sip1->Wake on Lan->Server einschalten.
dazu den listener des Callmonitors:
Code:
in:cancel ^ ^01212********* /bin/ether-wake 00:30:**:**:**:**
Server enthält Https-server, Http-Server, VNC-server(nicht meckern nur intanet),
SSH-Server, Samba-Server(Intranet), Teamspeak-Server und
am wichtigsten Streamripper (ein Programm um Internetradio intelligent aufzunehmen)

Um den Server wieder auszuschalten:
Fritzbox->über Callmonitor:Sip2->SSH-verbindung->Server ausschalten
dazu den listener des Callmonitors:
Code:
in:cancel ^ ^01212********* 
ssh -i /var/tmp/flash/.ssh/id_rsa 192.168.178.*** /sbin/shutdown -h now
:p
 
Zuletzt bearbeitet:
Mh, ich verstehe immer nicht, warum man sowas immer per Telefon machen möchte...
Da ist man doch immer total unflexibel (man muss immer das Telefon/ Handy dabei haben); die Funktion ist auf das beschränkt, wie man vorher die Fritzbox konfiguriert hat; man möchte ja meistens eh den Server erst starten, wenn man grad schon am Internet sitzt ...
Ich finde persönlich einen SSH-Zugang auf die Fritzbox bequemer, ich habe Putty auf meinem USB-Stick und kann mit 2x Doppelklick (Putty öffnen, dann gewünschte Verbindung aufbauen) einen PC im Netzwerk runterfahren, hochfahren, SSH-Zugriff auf Server oder Fritzbox erhalten, ... Und wenn ich mal an einem Linux-PC sitze, dann steht mir ja meist eh ein SSH-Client zur Verfügung, den ich dann mit einer Zeile anweisen kann, das gewünschte zu tun.
Naja, aber ist ja halt Geschmackssache...

Ich werde dann in den nächsten Tagen das Wiki ein wenig erweitern, stelle den Link danach nochmal rein, damit ihr nochmal nen Blick drauf werfen könnt, ob alles soweit okay ist.
 

Statistik des Forums

Themen
244,832
Beiträge
2,219,110
Mitglieder
371,534
Neuestes Mitglied
vignajeanniegolabek
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.