wake on lan mit FRITZ!Box 7141 & FW: 40.04.50

jens_81

Neuer User
Mitglied seit
16 Mrz 2008
Beiträge
17
Punkte für Reaktionen
0
Punkte
0
Mein Ziel: Sich per ssh mit port 26,
von außen (irgend wo im internet),
auf meine Fritzbox mit Putty einloggen,
mit
Code:
ether-wake -i eth0 AA:BB:CC:DD:EE:FF
meinen Server aufwecken,
auf dem ich mich dann wieder mit ssh über den Standartport des ssh einloggen kann.
(natürlich mit portforwarding der fritzbox)

Zu meinem Problem:
Ich bringe den dropbear (ssh Server) nicht zum laufen.

Erst habe ich es händisch auf der Kommandozeile der Fritzbox versucht.
Folgendes habe ich mit Telnet auf der f-box getan:

Die dropbear Version für den linuxkernel 2.6 mit "wget" von habe ich von meinem Webserver in /var/tmp/ geladen. (Arbeitsspeicher der Fritzbox)

Code:
wget http://www.muster-server.de/files/linux26/dropbear
dropbear war dann auch vorhanden, siehe:
Code:
# ls /var/tmp
avm-resolv.conf    group              me_logic.ctl       pb_event
busybox            hosts              me_multid.ctl      pbctrl
callmessage.sh     igddesc.xml        me_phonebook.ctl   phonebook.xml
csem               me_ctlmgr.ctl      me_voipd.ctl       resolv.conf
dropbear           me_dsld.ctl        nohup.out          shadow
foncontrol         me_foncontrol.ctl  parse_telefon.sh   startpc
foncontrol.xml     me_igdd.ctl        passwd             woc.sh
#
nun noch als erstes ein:
Code:
# /var/tmp/dropbear --help
Bus error
#
und da das böse überaschen (Bus error)
Damit weiss ich nichts anzufangen
und nach langer Suche im internet habe ich auch nichts passendes gefunden.

Na gut, hab dann gedacht, benutzt du halt "the-construct" und lässt ein Image erstellen mit den Mods:
[telnet starten] und [dropbear-sshserver]
und flashst dieses erstellte pseudo.image auf die Fritzbox.

Nach dem reboot:
Die Fritzbox lebt noch und auch dropbear ist wieder vorhanden ;-):

Telnet funktioniert,
aber einloggen per ssh funktioniert (auch aus dem lokalem Netz) nicht.

Dann habe ich einmal die laufenden Prozesse auf der Komando-zeile abgefragt, siehe:
Code:
# ps
  PID  Uid     VmSize Stat Command
    1 root        316 S   init
    2 root            SWN [ksoftirqd/0]
    3 root            SW< [events/0]
    4 root            SW< [khelper]
    5 root            SW< [kthread]
    6 root            SW< [kblockd/0]
   23 root            SW< [pdflush]
   24 root            SW< [pdflush]
   26 root            SW< [aio/0]
   25 root            SW  [kswapd0]
   62 root            SW  [pm_info]
   69 root            SW  [mtdblockd]
   95 root            SW  [tffsd_mtd_0]
  450 root            SWN [jffs2_gcd_mtd6]
  507 root            SW< [capi_oslib]
  508 root            SW< [capi_oslib]
  511 root            SW  [capitransp]
  540 root            SW< [khubd]
  614 root       3720 S N ctlmgr
  656 root       1368 S   igdd
  686 root       1248 S   multid
  696 root       1272 S   dsld -i -n
  711 root        276 S   telnetd -l /sbin/ar7login
  712 root       1992 S   telefon a127.0.0.1
  715 root       1992 S   telefon a127.0.0.1
  718 root       1972 S < voipd
  723 root       1992 S   telefon a127.0.0.1
  724 root       1992 S   telefon a127.0.0.1
  725 root        860 S   pbd
  726 root        860 S   pbd
  732 root        860 S   pbd
  733 root        860 S   pbd
  743 root        176 S   /bin/run_clock -c /dev/tffs -d
  754 root       3720 S N ctlmgr
  755 root       3720 S N ctlmgr
  756 root       3720 S N ctlmgr
  783 root       1368 S   igdd
  784 root       1368 S   igdd
  785 root       1368 S   igdd
  786 root       1992 S   telefon a127.0.0.1
  787 root       1992 S   telefon a127.0.0.1
  788 root       1992 S   telefon a127.0.0.1
  790 root            RWN [kdsld_token]
  828 root        316 S   init
  904 root        496 S   -sh
  985 root        348 R   ps
#
Also, da läuft nix mit ssh oder dropbear.

und ein:
Code:
# /var/tmp/dropbear --help
Bus error
#
brachte wieder Bus error ;-(

Auserdem hat die
Code:
/var/flash/debug.cfg
eine Datei namens startpc erstellt, in welcher der Befehl zum aufwecken meines Servers enthalten ist.
doch ein:
Code:
# /var/tmp/startpc
Illegal instruction
#
bringt dann ein: "Illegal instruction" alles nicht so wie ich will *heul*

Übrigens, alles mit dem (Standart ssh-Port habe ich auch schon versucht)

Danke für deine Zeit und das lesen, liest sich vielleicht lang,
habe halt versucht so viel infos wie möglich hier reinzupacken damit unnötige rückfragen erspart bleiben.

Nun endlich meine Fragen ;-)

1. Wie sollte ich weiter vorgehen?

2. Soll ich mir die aktuellste version von dropbear downloaden und es damit versuchen oder reichen die /files/ von the-construct?

3. Was ist mit dem Fehler: Bus error gemeint?

4. Da das erstellen eines portforwardings auf die ip-adresse der Fritzbox über das webinterface nicht zugelassen wird, hilft es dann überhaupt in der:
/var/flash/ar7.cfg
forwardrules wie:
Code:
forwardrules = "udp 0.0.0.0:5060 0.0.0.0:5060", "tcp 0.0.0.0:26 0.0.0.0:26",
hinzuzufügen?

5. *heul* oder kann ich mit dem heulen aufhören und Du hast eine Lösung meines Problems?

dann :groesste:

Also ich würde mich sehr freuen wenn jemand eine Anregung hat.
und noch einmal Danke fürs lesen.

Mit freundlichen Grüßen
Jens
 
Hallo,

ist dropbear ausführbar (chmod 755 /var/tmp/dropbear)? Ist Port 26 sicher frei in der Box? Mache mal ein "cat /var/tmp/startpc".
 
Die rechte stimmen

Jau

Die Rechte stimmen... öööh .. hast aber recht ein zweitesmal sollte ich nachsehen :D

Und ein "cat" bringt mir als Inhalt der startpc Datei: ein ordentliches Script, im Inhalt den Befehl
Code:
ether-wake -i eth0 <meine-mac>
genauen inhalt kann ich posten wenn ich wieder daheim bin, glaub das war eh nur ein 3-Zeiler.

Ist denn das vorhaben mit meiner Fritzbox schon gemacht worden? (7141 & FW: 40.04.50)?

Die Forwardrules habe ich noch nicht gemacht? Problem war ja ersteinmal überhaupt dropbear unter den laufenden Prozessen auftauchen zu lassen?
Siehe ps Befehl im ersten Post.
Oder kann der nicht laufen wegen den forwardrules?
Vielleicht hat der "Bus error" ja die fehlenden Regeln als Grund,
was ich aber nicht denk, weil local müssen doch keine Regeln da sein damit der überhaupt startet, oder doch?
Wenn ja wie? .... ;-(

Wie müssten denn dafür die korrekten Rules aussehen?
Habe ich das in meinem ersten Post richtig verstanden?

Danke für die Tips wenn ich zuhause bin werd ich die Rechte nochmal genau überprüfen, die Scripte durchsehen und die Regeln erstellen.
Dann alles nochmal versuchen und wieder rückmeldung hier im Thema geben.

Mit freundlichem Gruß
Jens
 
Zuletzt bearbeitet:
Hallo,

Code:
ether-wake -i eth0 <meine-mac>
Ist das alles? Das ist nie und nimmer ein ordentliches Script. Wo ist denn der Shellinterpreter? Der sollte ja mindestens drin sein.

Ist denn das vorhaben mit meiner Fritzbox schon gemacht worden? (7141 & FW: 40.04.50)?
Die Modifikationen sind alle relativ unabhängig von der Box und der Firmware - solange man die Binaries für die richtige Kernelversion benutzt. Darauf hast du ja geachtet, oder?

Dennoch könntest du dir mal eine Freetz Firmware für deine Box bauen und es damit testen. Dort ist garantiert Unterstützung für die 7141 mit 40.04.50 drin.
 
Hallo Frank,

vielleicht ist das ja etwas OffTopic, aber mit deiner Bemerkung
Wo ist denn der Shellinterpreter?
meinst du ja wohl die fehlende Zeile
Meine Frage dazu:
Wirkt sich das wirklich während der Ausführung aus? Das #-Zeichen leitet doch normalerweise einen Kommentar ein. :noidea:

Joe
 
Hallo,

ja, eingeleitet werden sie tatsächlich durch das Kommentar Zeichen, dennoch sind sie wichtig für die Ausführung, denn das System weiß, über welche Shell sie das Script abarbeiten kann. So sind Scripte für bash, csh, sh oder zsh durchaus unterschiedlich. Steht dort ein Eintrag, der nicht existiert (z.B. #!/bin/bash auf einer Box ohne bash), gibts einen Fehler bei der Ausführung. Man kann auf die Weise auch direkt ein Perl-Script ausführen lassen - so denn Perl installiert ist auf dem Host.
 
Hallo Frank,

demnach werden vom Betriebssytem wohl doch Informationen nach "#!" gelesen und entsprechend interpretiert.
Das war mir so noch nicht klar. :mad:
Vielen Dank für diese Information. Ich werde meine Scripte nun so umbauen.

Joe
 
also ...

zu den rechten von dropbear
Code:
# ls -l dropbear
-rwxr-xr-x    1 root     root       355674 Mar 18 17:01 dropbear
#
zu dem inhalt der startpc
Code:
# cat startpc
/var/tmp/busybox ether-wake -i eth0 00:13:D4:69:D0:43
#
hier gibts also keinen einleitenden teil und auch kein END
beim ausführen kommt das hier ;-)
Code:
# /var/tmp/startpc
Illegal instruction

oder

# /var/tmp/busybox ether-wake -i eth0 00:13:D4:69:D0:43
Illegal instruction
#


das kommt allesdings von dem geflashten pseudo.image von the-construct
ich weis nicht mit dem vi auf der box umzugehen, ;-( der lässt sich hier nicht beenden weder mit ESC und q oder q! auch nicht mit zz oder strg + z

Aber ganz ehrlich das ist im Moment nur das sekundäre Problem,
weil ohne ssh-Server brauch ich auch kein Pc starten ;-) und es funktioniert ja erstmal auch mit dem ether-wake Befehl.


Ich dachte bash ist eine Schnitstelle zwischen Terminal und Betriebssystem die also die Befehle dem Betriebssystem übergibt. und ohne bash kann ich mich doch nicht anmelden am system oder ? dachte bash ist eine art shell oder versteh ich da alles falsch?

na ja nun will ich ja eigentlich nur dropbear laufen lassen. ich mach jetzt mal die regeln in der /var/flash/ar7.cfg

@frank
Dennoch könntest du dir mal eine Freetz Firmware für deine Box bauen und es damit testen. Dort ist garantiert Unterstützung für die 7141 mit 40.04.50 drin.
:confused: ??

ich meld mich mit meinem erfolg oder misserfolg ;-)
Grüße Jens
 
Zuletzt bearbeitet:
Hallo Jens,

wenn du das direkt von der Konsole aus starten willst (nicht aus der debug.cfg), dann fehlt da jeweils nur ein Punkt ".":
Code:
# [B][COLOR="Red"].[/COLOR][/B]/var/tmp/startpc

oder

# [B][COLOR="Red"].[/COLOR][/B]/var/tmp/busybox ether-wake -i eth0 00:13:D4:69:D0:43
Joe
 
Hallo,

Ich dachte bash ist eine Schnitstelle zwischen Terminal und Betriebssystem die also die Befehle dem Betriebssystem übergibt. und ohne bash kann ich mich doch nicht anmelden am system oder ? dachte bash ist eine art shell oder versteh ich da alles falsch?
bash ist eine Shell, dass ist richtig, aber nur eine von vielen, die es gibt. bash ist nicht auf der Box, da ist nur eine sh, soweit ich weiß.

Ich könnte mir auch vorstellen, dass du bei The Construct die falschen Komponenten in die Firmware geladen hast.
 
@frank

hmm.. also bei the construct habe ich nicht viel auswählen können eigentlich habe ich nur telnet und dropbear ausgewählt und dann noch die files des linuxkerns 2.6 verwendet.

aber ich bin jetzt nach der anleitung vorgegangen

wie fisch-li

Code:
cd /var
#
# download der Software
/usr/bin/wget [url]http://www.spblinux.de/fbox.new/cfg_dropbear[/url]
#
chmod 755 /var/cfg_dropbear
#
# config und Start (modus: onlykey -> kein password authentication, nur public key)
#ONLYKEY VERSTEH ICH NICHT HABE ICH ABER MAL DAMIT VERSUCHT.
#
/var/cfg_dropbear install
/var/cfg_dropbear start onlykey
#
/var/dropbear/bin/dropbearkey -t rsa -f /var/tmp/dropbear_rsa_hostkey -s 768
#DANACH HABE ICH EINEN FINGERPRINT AUSGESPUCKT BEKOMMEN UND EINEN
#ssh-rsa

# diese Zeilen sind als Alternative zu public key  authentication zu sehen
# Falls gewünscht muß oben auch "onlykey" entfernt werden!
#OK DAFÜR MUSS ICH ALSO OBEN NUR "ONLYKEY" ENTFERNEN DIE BEIDEN
#NACHFOLGENDEN ZEILEN AUSKOMMENTIEREN UND EINEN HASCH MIT "#xxxxxxxxx:#" ERSETZEN

#cp -p /var/tmp/shadow /var/tmp/tmp_shadow
#sed -e "/root:/s#^root:[^:]*:#xxxxxxxxx:#" /var/tmp/tmp_shadow > /var/tmp/shadow

cd /var/tmp
# # # # # # # # # Installation Etherwake
#
# Etherwake ist bereits auf der Box installiert!
# Damit kann man andere Maschinen per Netzwerk booten 
# (nur MAC Adresse nötig; password als Parameter möglich)
#
# Hier das Interface der Fritzbox und die MAC-Adresse des PCs eintragen
echo "/usr/bin/ether-wake -i eth0 ME:IN:E :MA:C" > /var/tmp/start_script_host1
chmod  x /var/tmp/start_script_host1


# add fritz box itself in resolv.conf to resolv dhcp attached machines in your network
echo "nameserver 192.168.178.1" >> /var/tmp/resolv.conf
#GUT OK DIE IP MEINER FRITZBOX UND "NAMESERVER" LASS ICH SO STEHEN
# ODER? ABER WOFÜR IST DAS HIER GUT? DAMIT ADRESSEN AUSGELASSEN 
#WERDEN DIE DER DHCP VERGEBEN HAT?

# create valid authorized_keys file
# hier muß der public key (openssh-keygen generiert) eingetragen werden,
# der ohne auf die Fritz Box per ssh zugreifen können soll:
#  ssh [email][email protected][/email]
#DER OHNE WAS; AUF DIE BOX ZUGRAIFEN KANN (VERSTEH DAS NICHT WAS HIER GEMEINT IST)
#
cat > /var/tmp/dropbear/authorized_keys <<END_OF_FILE
#JETZT NACH DIESEM BEFEHL KOMMT EIN ">" UND DANNACH GEBE ICH DEN
#VORHIN AUSGESPUCKTEN ssh-rsa EIN; EINFACH AUSSCHNEIDEN - EINFÜGEN

ssh-rsa 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxx  hans@host1

#AUS hans@host1 HABE ICH "[email protected]" GEMACHT
#DANN NOCH
END_OF_FILE
#DAMIT ICH DIESE ">" VERLASSEN KANN
hab in der Anleitung mal die kommentare nochmals mit Großbuchstaben kommentiert,was ich nicht versteh.
Aber mein eigentliches Problem hier

der ssh ist jetzt erreichbar,
mit putty per ssh auf die fritzbox ip bekomme ich ein

"login as:" oder so ähnlich

wen gebe ich nun ein? [email protected], oder root, funktioniert nicht wer istz hier nun gemeint. aber warscheinlcih hab ich sowieso einen gravierenden teil ausgelassen oder ? zumindes habe ich die
Code:
#cp -p /var/tmp/shadow /var/tmp/tmp_shadow
#sed -e "/root:/s#^root:[^:]*:#xxxxxxxxx:#" /var/tmp/tmp_shadow >
die zwei zeilen ausgelassen.

;-( jetzt steh ich da und wes nich so richtig weiter.
sorry wennich immer noch frag


grüße jens
 
Zuletzt bearbeitet:
Hallo,

am login Prompt kann [email protected] natürlich nicht funktionieren. Der Nutzer heißt nur root, fritz.box ist der host. [email protected] musst du schon in Putty eingeben, dann brauchst du nur noch das Passwort einzutippen, weil sowohl Nutzername und host schon angegeben sind.
 
ja das ist klar

ja das ist klar nur das geht ebend nicht ;-( kommt als antwort incorect ....
wenn ich root eingebe ;-(
 
Kostenlos!

Statistik des Forums

Themen
248,923
Beiträge
2,305,224
Mitglieder
378,647
Neuestes Mitglied
nightdeck