Benutzer persistent Anlegen auf Freetz funktioniert trotz libfreetz-Patch nicht?

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
Hallo.

ich habe bis gestern freetz-stable-1.0 auf mein 7170 gehabt. Es hat für die Firmware nicht geklappt patch libfreetz zu erstellen. Da kam nach patch befehl folgende Meldung.


Code:
patching file make/libs/libfreetz.mk
patching file make/libs/Config.in
Hunk #1 FAILED at 664.
Heute habe ich die folgende development Version von freetz erfolgreich gepatch und auf die Box hochgeladen.

Firmware-Version 29.04.59freetz-devel-2675M

Dann bin ich auf die box durch ssh gegangen (dropbear) und habe folgendes eingegeben um einen user anzulegen.

Code:
/var/mod/root # adduser hans
Changing password for hans
New password:
Bad password: too weak
Retype password:
Password for hans changed by root
/var/mod/root # cat /etc/passwd
root:x:0:0:root:/mod/root:/bin/sh
ftpuser:any:1000:0:ftp user:/var/media/ftp:/bin/sh
ftp:x:1:1:FTP account:/home/ftp:/bin/sh
hans:x:1001:1001:Linux User,,,:/home/hans:/bin/sh
/var/mod/root # cat /etc/group
root:x:0:
users:x:1:
hans:x:1001:
/var/mod/root # cat /etc/shadow
root:XXPWDXX:12332:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
hans:XXPWDXX:14174:0:99999:7:::
/var/mod/root # modusers save
/var/mod/root # modsave flash
Writing /var/flash/freetz...done.
10752 bytes written.
Sieht alles in Ordnung aus bis auf der Eintrag in /etc/group oder nicht?

So sieht login versuch gleich danach aus

Code:
fritz.box login: hans
Password:
   __  _   __  __ ___ __
  |__ |_) |__ |__  |   /
  |   |\  |__ |__  |  /_

   The fun has just begun...
login: cannot run /bin/sh: Permission denied
/var/mod/root #
Also seltsamerweise kann der User sich nicht einloggen? Hat jemand eine Erklärung dazu?

Dann mach ich ein Reboot um zu sehen ob der Benutzer hans persistent gespeichert wurde. Und so siehts nach ein Reboot aus:


Code:
/var/mod/root # login
fritz.box login: hans
Password:
Login incorrect
/var/mod/root # cat /etc/passwd
root:x:0:0:root:/mod/root:/bin/sh
ftpuser:any:1000:0:ftp user:/var/media/ftp:/bin/sh
ftp:x:1:1:FTP account:/home/ftp:/bin/sh
/var/mod/root # cat /etc/group
root:x:0:
users:x:1:
hans:x:1001:
/var/mod/root # cat /etc/shadow
root:XXPWDXX:12332:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
ftp:!:10957:0:99999:7:::
hans:XXPWDXX:14174:0:99999:7:::
ftp:!:10957:0:99999:7:::
/var/mod/root #
Hans ist also von /etc/passwd verschwunden, ist aber in /etc/group noch drin...

Libfreetz ist definitiv dies Mal auf der Box

Code:
/var/mod/root # ls /lib/libfreetz.so
/lib/libfreetz.so        /lib/libfreetz.so.1      /lib/libfreetz.so.1.0.0

Was mache ich Falsch? Bitte um Hilfe.

Vielen Dank schon mal im Voraus.
 

Darkyputz

Aktives Mitglied
Mitglied seit
27 Jul 2005
Beiträge
2,321
Punkte für Reaktionen
0
Punkte
36
jo...also erstmal iss der patch oben inne Hose gegangen(musst du nochmal per Hand die Änderung die der Patch tun würde nachziehen oder den Patch für dich anpassen)
dann solltest du dir den gefallen tun und die User die du anlegst in der /var/tmp/passwd anlegen und am besten gleich mit nem Homepfad(für z.b. ftp Verwendung)
Sollte dann aber gehen...bei rennt es ja auch hervorragend
 

ao

Aktives Mitglied
Mitglied seit
15 Aug 2005
Beiträge
2,084
Punkte für Reaktionen
0
Punkte
36
siehe auch in diesem Thread ;)
 

matze1985

Aktives Mitglied
Mitglied seit
17 Feb 2007
Beiträge
1,537
Punkte für Reaktionen
0
Punkte
0
Dieser Patch ging mit der devel-version durch? Konntest du libfreetz im Menuconfig auswählen und hast das auch getan??

Hast du diesen Patch auch im <freetz-dir>/patches/ Verzeichnis abgelegt?
 

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
Dieser Patch ging mit der devel-version durch?
Ja!
Konntest du libfreetz im Menuconfig auswählen und hast das auch getan??
Nein, konnte ich nicht. libfreetz war in Menuconfig nicht sichtbar.

Hast du diesen Patch auch im <freetz-dir>/patches/ Verzeichnis abgelegt?
Nein hab ich nicht. Ich dachte das wäre nur eine ältere Version von libfreetz. Muss ich diesen auch mit patch -p0 befehl patch? Sollen die patches unter <freetz-dir>/patches/ kopiert werden?

Ich probiere es mal aus..

So ich habe es jetzt ausprobiert. 150-rc.S-libfreetz.patch die Datei ist nicht zu patchen da die Datei etc/init.d/rc.S nicht existiert..

Code:
/freetz-trunk$ patch -p0 < 150-rc.S-libfreetz.patch
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- etc/init.d/rc.S.orig       2008-06-01 23:16:14.000000000 +0200
|+++ etc/init.d/rc.S    2008-06-01 23:16:30.000000000 +0200
--------------------------
File to patch:
Scheint So als ob libfreetz patch wirklich nicht mehr funktioniert...?
 
Zuletzt bearbeitet:

matze1985

Aktives Mitglied
Mitglied seit
17 Feb 2007
Beiträge
1,537
Punkte für Reaktionen
0
Punkte
0
zum einen musst du libfreetz auch wirklich auswählen im menuconfig, dazu muss wahrscheinlich advanced options aktiviert sein.
Der zweite patch muss in das Verzeichnis <freetz>/patches kopiert werden, weil er während des make-Vorgangs benutzt wird um rc.S zu patchen.

@Oliver: Ist das so richtig? Es steht im Thread nicht genau drin, aber so habe ich es mir anhand des Patches erschlossen. Den anwenden und den nach <freetz>/patches kopieren.


Bei mir klappt das so :)

kleiner Tip: libfreetz befindet sich bei den Libarys
 

cuma

Aktives Mitglied
Mitglied seit
16 Dez 2006
Beiträge
2,756
Punkte für Reaktionen
6
Punkte
38
Ich benutze momentan den angehängten Patch. Mit Labor hab ich nie getestet. Es sind dann keine weiteren Patches nötig!
 
Zuletzt bearbeitet:

matze1985

Aktives Mitglied
Mitglied seit
17 Feb 2007
Beiträge
1,537
Punkte für Reaktionen
0
Punkte
0
wenn ich das richtig sehe macht der aber auch nix anderes als zusätzlich noch den 150-rc.S-libfreetz.patch in die patch-Verzeichnisse für 7270 und 7170 zu kopieren, oder?
Mach ich halt per Hand (install-script) :)

PS:auf der 7141 funzt libfreetz auch :)
 

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
jetzt habe ich es ausprobiert und den 150-rc.S-libfreetz.patch in die patch-Verzeichnisse und anschlißend ein make. Dann die Firmware habe ich auf die box hochgeladen. Jetzt antwortet der webserver nicht mehr. 192.168.178.1 von fritzbox nicht mehr. http://192.168.178.1:81/ also freetz webseite geht..per ssh kann ich auf die box und ich sehe der angelegte benutzer bleibt nach einem reboot drin aber jetzt habe ich ein anderes problem. kann ich das irgendwie schnell beheben? Oder muss ich ein recover durchführen.
 

Darkyputz

Aktives Mitglied
Mitglied seit
27 Jul 2005
Beiträge
2,321
Punkte für Reaktionen
0
Punkte
36
kinners...
die 150ér datei in /patches/boxtype/
den anderen via patch einspielen wie oben beschrieben patch -p0 < ...
das sind 2 Dateien...ganz simpel...
und wenn der nicht 150´er mal streickt weil was irgendwo geändert iss, dann einfach mal editieren udn schauen was er wo macht und das per hand machan...so schwer iss das nicht...
helfe aber gern weiter
 

cuma

Aktives Mitglied
Mitglied seit
16 Dez 2006
Beiträge
2,756
Punkte für Reaktionen
6
Punkte
38
@matze1985: Da der Patch aus dem Ticket wohl nicht mehr ganz passte, habe ich meine Version angehängt, die ändere ich immer wenns mal klemmt. Ist aber das gleiche wie aus dem Ticket, allerdings mit 3 Boxen und nur 1 Patch-Datei
 

olistudent

IPPF-Urgestein
Mitglied seit
19 Okt 2004
Beiträge
14,779
Punkte für Reaktionen
10
Punkte
38
Ich hab dein Patch mal ans Ticket angehängt und meinen gelöscht.

MfG Oliver
 

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
hi.

also ich habe noch mal ein frisch erstelles Image mit libfreetz auf die box getan. Scheint den neu angelegten benutzer auch nach dem einloggen zu geben. das problem ist dass einloggen nicht klappt. da der neu user /bin/sh nicht ausführen darf.Hier noch mal der Login versuch.

Code:
Password:
   __  _   __  __ ___ __
  |__ |_) |__ |__  |   /
  |   |\  |__ |__  |  /_

   The fun has just begun...
login: cannot run /bin/sh: Permission denied
Der benutzer wurde durch den folgenden befehl angelegt.

Code:
adduser -h /home/svn -G svnusers svn
Warum kann der user also sich nicht einloggen also /bin/sh ausführen?
 
Zuletzt bearbeitet:

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
kann es sein dass der Fehler oben etwas mit Mount zu tun hat weil da unten bei sysfs und proc noexec steht?

Code:
/var/mod/root # cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>               <dump>  <pass>
proc            /proc           proc    nosuid,nodev,noexec     0       0
tmpfs           /var            tmpfs   defaults                0       0
sysfs           /sys            sysfs   nosuid,nodev,noexec     0       0
 
Zuletzt bearbeitet:

cuma

Aktives Mitglied
Mitglied seit
16 Dez 2006
Beiträge
2,756
Punkte für Reaktionen
6
Punkte
38
Es darf sich ausser root per ssh niemand einloggen. Such mal im Forum
 

olistudent

IPPF-Urgestein
Mitglied seit
19 Okt 2004
Beiträge
14,779
Punkte für Reaktionen
10
Punkte
38
Das sieht dann aber nicht so aus oder?

MfG Oliver
 

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
Es darf sich ausser root per ssh niemand einloggen. Such mal im Forum
folgender dropbear patch ist gelöscht damit non-root login per ssh funktionieren kann.

Code:
<freetz-dir>/make/dropbear/patches/100-root-login-only.patch
Außerdem klappt der versuch innerhalb der shell mit dem befehl "login" einzuloggen auch nicht. Also ich glaube das hat irgendwas mit berechtigungen zu tun aber ich weiss leider nicht was.. Vielleicht hilf einem erfahrenen folgendes ? Sind die flags bei /lib normal?

Code:
/var/mod/root # ls -ld / /bin /etc/ /lib /home
drwxrwxrwx    1 root     root          128 Oct 23 23:03 /
drwxrwxr-x    1 root     root          939 Oct 23 23:03 /bin
drwxrwxr-x    1 root     root          736 Oct 23 22:20 /etc/
lrwxrwxrwx    1 root     root           12 Oct 23 23:03 /home -> var/mod/home
drwxrwx---    1 root     root         3456 Oct 23 23:03 /lib
 

cuma

Aktives Mitglied
Mitglied seit
16 Dez 2006
Beiträge
2,756
Punkte für Reaktionen
6
Punkte
38
Vielleicht gibt es das HOME des Benutzers nicht oder die Rechte sind falsch. Oder die Shell ist nicht richtig eingestellt in der passwd
 

seek

Neuer User
Mitglied seit
15 Mai 2006
Beiträge
46
Punkte für Reaktionen
0
Punkte
6
Vielleicht gibt es das HOME des Benutzers nicht oder die Rechte sind falsch. Oder die Shell ist nicht richtig eingestellt in der passwd
die Shell ist eingestellt auf /bin/sh und HOME verzeichnis für den Benutzer existiert auch.



Code:
/var/mod/root # ls -l /home/
drwxr-xr-x    2 ftp      users           0 Jan  1  2000 ftp
drwxr-xr-x    2 hans     hans            0 Jan  1  2000 hans

/var/mod/root # cat /etc/passwd
root:x:0:0:root:/mod/root:/bin/sh
ftpuser:any:1000:0:ftp user:/var/media/ftp:/bin/sh
ftp:x:1:1:FTP account:/home/ftp:/bin/sh
hans:x:1001:1001:Linux User,,,:/home/hans:/bin/sh
 

Silent-Tears

IPPF-Promi
Mitglied seit
3 Aug 2007
Beiträge
7,456
Punkte für Reaktionen
0
Punkte
0
Bei dem gelöschten Patch, hast du danach ein make dropbear-dirclean && make gemacht?
 

3CX PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
232,891
Beiträge
2,027,807
Mitglieder
351,017
Neuestes Mitglied
mucfaber