Anleitung: SSH (Dropbear) und Etherwake auf der FRITZ!Box

Hallo,

ich habe jetzt nicht alles gelesen, aber bin grob drüber gegangen und habe keine lösung für mein problem gefunden:

dropbear läuft, ich habe jedoch ein Problem mit dem Passwort.
in der shadow wird das passwort richtig eingetragen wie es am anfang des threads beschrieben wurde. ich benutze also:

Code:
sed -e "/root:/s#^root:[^:]*:#root:36d6NYYMch85U:#" /var/tmp/tmp_shadow > /var/tmp/shadow

um das pw einzutragen. Es steht dann auch in der shadow drin wenn ich mit

Code:
cat shadow

nachschaue.

Wenn ich jetzt als root per ssh verbinden möchte bekomme ich immer Access Denied :/ kann mir jemand weiterhelfen?


danke & viele grüße
chee
 
@cHee: machst du das von extern? wenn ja, hast du dann den port 22 freigegeben?
ansonsten poste mal, welche version von dropbear du hast, wie ist der aufruf usw...

gruß
 
Nein, es scheint tatsächlich so zu sein, dass mit den neuere FWs der Trick mit der virtuellen Karte nicht mehr funktioniert.
(eine) Lösung: ändere die ar7.cfg auf
"tcp 0.0.0.0:22 0.0.0.0:22 0 # SS"

Tschö, Jojo

Hat jemand auf der 7113 FW 60.04.61 ssh am laufen?
Ich habe mir per pseudoconstruct ein Image gebaut, das
installiert, virt NWK eingetragen. dropbear läuft. Komme von
Remote auch per ssh drauf, aber nicht auf die weboberfläche
mit "localhost" wie normal.
Hab jetzt die Virt. NWK wie im Beitrag oben von 192.168.178.253
auf den oben geändert, aber dasselbe. Jemand noch eine Idee?

Was mir noch aufgefallen ist, im putty fenster kommen als
letzte diese Outputs:
ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt

Normalerweise bei den anderen Boxen kommen aber viele Boxinfos, also viel mehr Seiten
 
Hallo DDD,

probier doch mal die neue Notfall-IP der Box: 169.254.1.1
Vielleicht klappt es ja damit. :noidea:

Joe
 
forwardrules =
"tcp 0.0.0.0:22 169.254.1.1:22 0 # ssh";
So, grad mal das hier ausprobieren...

Edit: Hmm, jetzt komm ich remote gar nicht mehr drauf... war wohl nicht so gut :)

@ Joe: hast du denn auf der 7170 dropbear laufen? Auf welche IP gehst du da?
Die 59 und die 61 FW von der 7113 müssten ja relativ ähnlich sein denke ich?!
 
Zuletzt bearbeitet:
SSH Tunnel zum http des Webinterfaces geht gar nicht mehr. Dafür geht aber direkt https (wenn entspechend im Webinterface eingerichtet).

Tschö, Jojo
 
ja, das ist ja das dumme, in der FW der 7113 gibts dieser Feature nicht :(
 
Oh, schade.
 
Bin (fast) am Ende....

Hallo alle zusammen!
Ich habe mich schon ziemlich weit durchgelesen, habe meinen Speedport W501 zur fritzbox gemacht, habe telnet zum laufen gebracht, habe die erforderlichen Dateien auf meinen Server gelegt und dann (nach etlichen Stunden, einigen Fehlschlägen und ner Menge Kaffee) über telnet einen ersten Teilerfolg erziehlt bis zu dieser Fehlermeldung... http://www.ip-phone-forum.de/attachment.php?attachmentid=35191&stc=1&d=1239232490
...darf ich euch an dieser Stelle um Hiiiiiiilfe bitten? :confused:
Ich weiß nicht wo ich einen Fehler gemacht haben könnte.:noidea: Ich vermute nur das es etwas mit der Erstellung das dropbearkey´s zu tun haben könnte...denn das habe ich noch nicht geschnallt :blonk: ...wird der key automatisch generiert? Muss ich einen auf http://www.univativ.net/php/tools/crypt.html erstellen und in die input.cfg eintragen, oder muss ich das über telnet machen??? :confused::confused::confused:
Ich hoffe ihr könnt mir helfen! Ich glaub bald... :doof:
 

Anhänge

  • Fehlermeldung.jpg
    Fehlermeldung.jpg
    42.8 KB · Aufrufe: 28
puh, das problem mit uclibc hatte ich auch, habe aber keinen schimmer mehr wie ich das gelöst habe. googlen nach "uclibc" hat mich irgendwann auf die lösung gebracht.

so bin ich vorgegangen:
1) auf der box ssh key erzeugt mit dropbear
2) mit uuencode in base64 kodiert
3) in der debug.cfg mit uudecode wieder dekodiert und ausgeschrieben:
Code:
#rsa hostkey ausschreiben
echo > /var/tmp/dropbear_rsa_host_key
/var/tmp/bin/uudecode -o /var/tmp/dropbear_rsa_host_key <<\EOP
begin 600 /var/tmp/dropbear_rsa_host_key
M````!WR[*U?2[0P*-&IJ0$6`"5NZ&'*?F'5>Z+M*^'N9!WRY4UGLAWB
M4+TB:U,4X";MY<,?***gekürzt***<2GDI9^9`7"(4>?HSF<;O\*_"9%=>
6`RO)-Q@8ZH"8<*G1HA^7)5+F_-E>TP``
`
end
EOP

wer will kann sich dann auch noch mit puttygen ein ssh-key-pärchen erzeugen, den public key nach base64 kodieren und mit der gleichen methode nach /var/tmp/roothome/.ssh/authorized_keys ausschreiben. funzt bei mir einwandfrei.
 
Hab´s auch (endlich) hin bekommen!

Auf Google hätte ich ja auch kommen können! :blonk:
Habe dort rausgefunden das jemand ein ähnliches Problem mit "bftpd" hatte und das er ein Aktuelleres bräuchte. Hab mir dann flugs unter http://www-user.rhrk.uni-kl.de/~metz/uClibc-0.9.28/ den "dropbearmulti-static" runtergeladen, auf meinen Server gelegt und in "dropbear" umbenannt und siehe da...es geht! :rock:
Allerdings bin ich mir nicht sicher ob "dropbearmulti-static" was anderes macht, da der Abschluß nur lautet:

Aendere Dateirechte ... [Done]

lege Symlinks an ... in uude
code: File exists
#

Ich Google nochmal ´n bisschen weiter, aber der Erfolg ist schonmal ein schönes Gefühl! :lol: Bis vor drei Tagen hatte ich von Tuten und Blasen keine Ahnung, aber das macht richtig Spaß!
An dieser Stelle ein Dankeschön an DDD und h3P0 für die schnellen Antworten und ein riesen Lob und dicken Dank an Supafly2k für die Anleitung.
Gruß
Thorsten
 
wenn du dich ohnehin grade dafür begeistern kannst und dich auch schon damit beschäftigt hast, schau am besten mal was hinter diesen skripten und programmen steckt. ich hatte genau wie du vorher keine ahnung von tuten und blasen und hab mich dann in das thema reingelesen, anstatt einfach das zu nehmen was mir vorgesetzt wird. was wäre zum beispiel, wenn da mal nicht [done] steht? ;)
abgesehen davon ist eine installation mit freez ein ganz schöner aufwand, wenn man windows nutzer ist und bloß den dropbear auf der box haben will.

wer möchte, kann sich auch an den statisch gelinkten binaries von busybox, dropbear, btpd und cifsmount bedienen, die ich benutze_: http://h3po.de/public/fritz.box/

ps: achja, "statisch gelinkt" bedeutet nur, dass einige zusätzliche dateien, die auf einem so kleinen linux wie der busybox fehlen, nicht gebraucht werden. die funktion des programms bleibt die gleiche, die datei ist bloß etwas größer.
 
ps: achja, "statisch gelinkt" bedeutet nur, dass einige zusätzliche dateien, die auf einem so kleinen linux wie der busybox fehlen, nicht gebraucht werden. die funktion des programms bleibt die gleiche, die datei ist bloß etwas größer.

statisches Linken
 
Hallo.

Ich habe die Fritzbox WLAN 7270 Firmware 54.04.70 (aktuelle).
Nun versuche ich schon seit heute um 14 Uhr das SSH zum laufen zu bekommen.

telnet, ssh-server läuft bereits alles, mein einziges Problem ist das Passwort.
Wenn ich es per
> passwd root ....
einstelle, funktioniert der Zugriff per Putty (SSH-Client).
Wenn ich es jedoch mit
> sed -e ...
versuche, funktioniert es nicht - es kommt keine Fehlermeldung - jedoch überschreibt er das alte Passwort nicht.

Kann mir da jemand helfen ?

Ach nochwas, die Dateien die >>supafly2k<< immer anhängt kann ich leider nicht laden (Zugriffsrechte hier im Board).

Von den Anleitungen her habe ich mich gehalten an:
Die hier im Board, die von TecCHANNEL und die von wehavemorefun.de
 
die passwd datei liegt in einem bereich der box, der bei jedem neustart wieder gelöscht wird (deshalb ja auch /var/tmp)
das umgeht man, indem man sich sein passwort als md5 hasht und so per debug.cfg in die passwd datei einträgt:

Code:
echo "root:md5passwort:0:0:root:/var/tmp/root:/bin/sh" > /var/tmp/passwd

bei der gelegenheit kannst du dann ja auch einstellen, in welchem verzeichnis die ssh sitzung startet und mit welcher shell. ich hab zb ne neuere busybox drauf, die auch tab completion usw unterstützt.

eine sache noch: solltest du darüber nachdenken, den ssh server nach außen erreichbar zu machen, benutze rsa keyfiles anstatt passwörter.
 
Hallo. Danke für die Antwort!

echo "root:md5passwort:0:0:root:/var/tmp/root:/bin/sh" > /var/tmp/passwd
Hat funktioniert - das Passwort habe ich mit dieser Seite verschlüsseln lassen:
.htpasswd Content Generator
Mit anderen Verschlüsselungen, bei denen der Hash mit "$1$..." anfängt funktioniert es nicht.

solltest du darüber nachdenken, den ssh server nach außen erreichbar zu machen, benutze rsa keyfiles anstatt passwörter.
Ich kenn mich mit ssh und deren Sicherung leider nicht so gut aus.
Da ich mich an die Anleitung von TecCHANNEL halte, lasse ich eine rsa_keyfile generieren,
erstelle jedoch trotzdem so einen Passwort-Zugang, weil man ja so einen ellenlangen
Schlüssel nicht immer dabei haben kann - bzw wenn man ihn auf USB o.ä. hat
das ja unsicherer ist als ein 15 Zeichen langes, sinnloses Passwort in meinem Kopf :)



Vielen Dank und einen schönen Sonntag noch!



UPDATE

Um den SSH-Port nach außen freizugeben, soll man ja in der ar7.cfg eine neue "forwarding-rule" eintragen ...
Leider finde ich den Codeschnipsel in der ar7.cfg nicht - da gibt es nur voip-forwarding-rules und tr069-forwarding-rules ?!

Ich habe mal versucht die entsprechende Zeile bei VOIP-forwarding einzutragen - nach einem restart meinte meine box:
"Es liegen keine Internet-Provider-Daten vor" o.ä. ... also kam ich nichtmehr ins Internet ...
 

Anhänge

  • ar7.cfg.jpg
    ar7.cfg.jpg
    74.2 KB · Aufrufe: 18
Zuletzt bearbeitet:
hab nachgedacht...

wenn du dich ohnehin grade dafür begeistern kannst und dich auch schon damit beschäftigt hast, schau am besten mal was hinter diesen skripten und programmen steckt.
@h3po
Ich habe getan, wie Du gesagt. Habe mich aber erstmal auf das beschränkt, was ich brauche...und zwar soll mein Router den Server starten, sobald meine Mediafestplatte eingeschaltet wird. Habe dazu alles entfernt, was für meine Zwecke "überflüssig" war und ´ne Zeile hinzugefügt (siehe autom wake script). Mit while true erziele ich eine Endlosschleife, damit der ping in der "if" Abfrage auch nach erfolgreichen anpingen weiterläuft (alle 30 sek). Hat ja alles ´n bisschen von "Basic" :) Hat sich mein C64 doch noch bezahlt gemacht! Friede seiner Seele... :beerdigu:

Was mir allerdings noch nicht ganz klar ist....:
1. warum ladet ihr etherwake, wenn busybox ether-wake integriert hat? Gibt es da Unterschiede?
2. wie wird die busybox gestartet? Oder einmal in die debug.cfg geschrieben wird sie automatisch gestartet?
3. was bewirken "symbolische links"? können dadurch Programme auf Pfade zugreifen, die einem Synonym zugeordnet wurden?

Hier die auf meine Bedürfnisse angepassten scipts...

input.cfg
PHP:
# Ether-wake Script 

# # # # # # # KONFIGURATION # # # # # #

# Server auf dem die Daten liegen
	# Serverurl ohne http:// und Verzeichnis angabe
		serverurl="meinserver.de"
	# Pfad zu den Dateien (zb serverdir="/fritzbox")
		serverdir="/fritzbox"

# Etherwake
	# MAC Adresse des zu Weckenden PC
		wolmac="**:**:**:**:**:**"
	# IP Adresse des zu weckenden PC
		wolip="***.***.***.***"
	# IP Adresse des weckenden PC
		wakeip="***.***.***.***"
	# Interface über das geweckt werden soll, die FBF ata hat eine andere belegung der Interfaces
	# intf = StdFkt - ataFkt
	# eth0 = LAN1   - WAN
	# eth1 = LAN2   - LAN1
		wolinterface="eth0"

# # # # # # KONFIGURATION ENDE # # # # #

# Warten bis die FritzBox den Server erreichen kann
while !(ping -c 1 $serverurl); do
sleep 5
done

# In das Lokale Verzeichnis wechseln
cd /var/tmp

# Nachladen von Dateien
wget http://$serverurl$serverdir/busybox

# Anpassen der Dateirechte
chmod +x /var/tmp/busybox

# autom wake Script
while true; do
(
if(ping -c 1 $wakeip); then
ether-wake -i $wolinterface $wolmac $wolip
fi
)
sleep 30
done

install.sh
PHP:
# Installationsscript autom wake



# # # # # # # KONFIGURATION # # # # # #

# Input Datei
  	input="/var/tmp/input.cfg"
# Temporaere Script Datei
	output="/var/tmp/output.cfg"
# Datei in welche das Script geschrieben werden soll (Typischerweise /var/flash/debug.cfg)
	debug="/var/flash/debug.cfg"
# Serverurl ohne http:// und Verzeichnis angabe
	serverurl="meinserver.de"
# Pfad zu den Dateien (zb serverdir="/fritzbox")
	serverdir="/fritzbox"

# # # # # # KONFIGURATION ENDE # # # # #


# # # # # # # # # SCRIPT # # # # # # # #
clear
echo "Installationsscript für auto wol"
# Wechseln des Verzeichnisses
echo -n -e "\nWechsele Verzeichnis nach /var/tmp...\t\t\t\t\t" && cd /var/tmp && echo "[DONE]" || exit

# Laden der benoetigten Dateien
echo -e "\nLade busybox, und input.cfg ..."
if  ( wget http://$serverurl$serverdir/busybox && wget http://$serverurl$serverdir/input.cfg); then

	echo "[DONE]"

	# Aendern der Dateirechte
	echo -n -e "\nAendere Dateirechte ...\t\t\t\t\t\t\t" && chmod +x ./busybox && echo "[DONE]" || exit


	# Sichern der alten debug.cfg
	echo -n -e "\nSichern der alten debug.cfg in $output ...\t\t\t" && cat $debug >> $output && echo "[DONE]" || exit

	# Uebertragen des Startscriptes in die Startdatei
	echo -n -e "\nSchreiben des Startscriptes in $output ...\t\t\t" && cat $input >> $output && echo "[DONE]" || exit

	# Schreiben des Temporaeren Scripts in $debug
	cat $output > $debug

	clear
	# Reboot um Einstellungen zu uebernehmen
	echo "Installation Komplett"
	echo "Die FritzBox wird in 5 Sekunden automatisch neu gestartet."
	sleep 5
	reboot
else
	echo "[FAIL] - Fehler beim Laden der Dateien vom Server"
fi
# # # # # # # SCRIPT ENDE # # # # # # #
 
@voxx: hier steht wie's geht: http://www.wehavemorefun.de/fritzbox/index.php/SSH/Dropbear
wichtig dabei ist auch, den port der nach außen offen ist nicht auf standard 22 stehen zu haben, denn: wenn du da nen ssh server am lauschen hast, der nach nem passwort fragt, hast du ganz schnell nen chinesischen server am anderen ende der dein passwort bruteforcen will. mit 15 zeichen bist du zwar noch ziemlich sicher, aber für deine box ist das stress ;)

@t.poepken: bei manchen standard-firmwares ist die busybox um etherwake und anderes gekürzt. wenn man mal das eine oder andere tool braucht, lädt man sich einfach ne neuere busybox ins tmp-verzeichnis:

Code:
# busybox 1.2.1
wget -P /var/tmp/ http://h3po.de/public/fritz.box/busybox-1.2.1
wget -P /var/tmp/ http://h3po.de/public/fritz.box/busybox-1.2.1-links
mkdir /var/tmp/bin
chmod +x /var/tmp/busybox-1.2.1
LINKS="`cat /var/tmp/busybox-1.2.1-links`"
for f in ${LINKS}; do
	ln -s /var/tmp/busybox-1.2.1 /var/tmp/bin/$f
done
rm /var/tmp/busybox-1.2.1-links
export PATH=/var/tmp/bin:/sbin:/bin:/usr/sbin:/usr/bin

der export in der letzten zeile sorgt dafür, dass bei eingabe von zB chmod zuerst unter /var/tmp/bin nach der passenden binary gesucht wird.
wenn man sich dann noch in der passwd datei die standard shell auf /var/tmp/bin/sh umstellt, merkt man gar nix mehr von der alten busybox.
 
Zuletzt bearbeitet:
Hallo. Danke für die Antwort.

Die Anleitung kenne ich schon - nur leider gibt es bei mir in der ar7.cfg einfach keinen Ausschnitt "forwardrules ..." - es gibt nur voip_forwardrules und tr069_forwardrules ...

wenn ich wüsste, wie ich die Datei an meinen PC schicke von der Fritzbox aus, kann ich sie auch mal online stellen - ich komm mir schon komplett beschränkt vor, weil ich schon fast eine Stunde damit verbracht hab, in dieser Datei den Ausschnitt zu finden ...

Gruß
 
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.