PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : chroot + ssh -> user does not exist



Morget
16.02.06, 23:43
Hallo,

ich wollte für ein Projekt auf meinem localhost einen abgetrenten bereich einrichten der dann über ssh erreichbar ist, dann bin ich darauf gestossen das man dafür chroot benutzen kann/sollte. ich habe mir also ein Tutorial gesucht wo erklärt wurde wie ich einen ssh zugang einrichte der anschlissten im chrootverzeichniss endet.

1.Tutorial: http://intmainvoid.nl/item/4
2.Tutorial: https://www.redhat.com/archives/redhat-list-de/2004-March/msg00006.html

soweit so gut.

ich habe also den user erstellt, habe das chroot verzeichniss erstellt, mit den inhalten (bin etc usr home ... usw.) habe die passwd geschrieben, die group geschrieben (natürlich ins etc). dann habe ich mich versucht über ssh anzumelden ssh user@localhost er fragt einmal passwort ab, ich gebe das passwort ein, dann kommt die meldung:

Last login: Fri Feb 17 00:18:44 2006 from ***
Have a lot of fun...
/bin/su: user user does not exist
Connection to localhost closed.

irgendwelche ideen?

danke schomal im vorraus.

MfG Morget.

Roger Wilco
17.02.06, 00:03
Sicher, dass der Benutzer sowohl in der /etc/passwd als auch der "lokalen" passwd in deiner chroot-Umgebung mit der gleichen UID existiert?

Morget
17.02.06, 00:07
nach dem ich es schätzungsweise 50 mal überprüft habe, würde ich sagen: ja.

Morget
17.02.06, 11:11
Ich habe jetzt alles nochmal auf null zurück gesetzt und bin nochmal alles nochmal neu erstellt mit hilfe des tutorials 2 (link siehe oben).

und ich komme immer wieder darauf hinaus das er mir sagt das der user nicht existiert...

Morget
17.02.06, 12:11
nach der Xten google suche hab ich jetzt eine lösung gefunden:

cp /lib/libnss* /home/chroot/lib/

und siehe da ich bin im chroot drinne....

Morget
17.02.06, 15:49
nächtes problem:

für das projekt wäre es äuserst vorteilhaft wenn man mit dem kde implementierten protokoll fish:// auf den rechner zugreiffen kann.

der ssh login funktioniert reibungslos:

ssh user@*ip*
password
drinne

das ganze z.b. im konqueror

fish://user@*ip*
password abfrage

ergebniss:

Beim Laden von fish://user@*ip* ist folgender Fehler aufgetreten:
Keine Verbindung zu Rechner *ip*.

nachdem ich dann noch im help:/kioslave/fish.html nach geschaut habe, was fish alles braucht und das in die chroot gepackt habe, trat immernoch keine verbesserung ein (sprich immernoch die selbe fehlermeldung)

kann es sein das fish noch irgendwas braucht was da nicht steht? denn wenn ich mich via fish auf einen normal users des systems (ohne chroot) anmelden wil funktionierts und er zeigt mir die entsprechenden enthaltenden dateien an.

quinte17
19.02.06, 11:07
hast du auch alle lybraries mit ldd überprüft, um alle abhängigkeiten auch rüberzukopieren??

also
ldd /bin/bash

zeigt alle abhängigkeiten von bash die dafür benötigt werden..

greetz

Morget
19.02.06, 12:08
die libs sind alle vorhanden.

Morget
20.02.06, 00:48
ich bin mir nicht ganz sicher worann es nun genau gelegen hat aber es funktioniert jetzt.

nach dem ich scp und ssh im chroot verfügbar gemacht habe und nochmal ein andere chroot-shell eingespielt habe...

manchmal verwirrt mich linux wirklich

PS: manchmal hab ich wirklich das gefühl man muss nur lang genug rumprobieren und dann wirds schon "irgendwie" funktionieren.