Chroot Installation mit PAM -> su

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Chroot Installation mit PAM -> su

Post by standbye »

Tach zusammen,

so hoffei ch kann das ganze einigermaßen gescheit erklären

Ich hab grad nach dem tutorial von http://www.tjw.org/chroot-login-HOWTO/ versucht eine Chroot Umgebung zu installieren.
Nunja jetzt verzweifel ich grad dran weil er mir wehemend behauptet das su den user nicht findet.
Kann es sein das das am PAM liegt das normalerweise für die authentifizierung genutzt wird? In dem Dokument steht was drin das es sein kann. Leider nix genaues und auch nicht was ich da neu kompilieren muss (nur rein das package wo da steht bringt nix ;( )
Weis jemand zufällig noch ein paar Tips?
SO hoffe das kann man verstehen

gruß
Peter

edit: muss ich in die chroot umgebung irgend ein pam mist reinbauen das der sich richtig authentifizieren kann?

captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Chroot Installation mit PAM -> su

Post by captaincrunch »

Nunja jetzt verzweifel ich grad dran weil er mir wehemend behauptet das su den user nicht findet.
Klingt ganz so, als hättest du den User nicht im normalen System angelegt. Beschreib doch mal die genauen Schritte bisher.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: Chroot Installation mit PAM -> su

Post by standbye »

1. schritt den user gabs schon im system
2. die shell /bin/chroot-shell mit

Code: Select all

#!/bin/bash
if [ "$1" = "-c" ]; then
        i=0;
        PARAMS="";
        for param in $*; do
                if [ $i -gt 0 ]; then
                        PARAMS="$PARAMS $param";
                fi
                let i++;
        done;
        sudo /usr/sbin/chroot /home/$USER /bin/su - $USER -c "$PARAMS"
else
        sudo /usr/sbin/chroot /home/$USER /bin/su - $USER
fi;

erstellt

3. das ganze in /etc/shells eingtragen
4.im home verzeichniss des angelgten users die verzeichnisse wie angegeben erstellt

Code: Select all

mkdir /home/shiva
mkdir /home/shiva/etc 
mkdir /home/shiva/dev 
mkdir /home/shiva/bin
mkdir /home/shiva/lib
mkdir /home/shiva/usr
mkdir /home/shiva/usr/bin
mkdir /home/shiva/home
chown shiva:shiva /home/shiva/home
5.
eine /home/shiva/etc/passwd

Code: Select all

root:x:0:0::/:/bin/bash
shiva:x:104:100::/home:/bin/bash
und eine /home/shiva/etc/group erstellt

Code: Select all

root:x:0:
shiva:x:104:
6.
bash nach /home/shiva/bin kopiert
die libaries die er mit ldd angezeigt hat nach /home/shiva/libs
7.das gleiche für su
8.eintrag in der suedoers

Code: Select all

shiva  ALL= NOPASSWD: /usr/sbin/chroot /home/shiva /bin/su - shiva*
jetzt noch in der /etc/passwd die shell von user shiva auf /bin/chroot-shell gestellt ;)

so das wars beim 1. mal ;)

dann hab ich weil ich gedacht hat hat mit pam was zu tun mir das wget ftp://alpha.gnu.org/pub/gnu/coreutils/s ... .13.tar.gz
gezogen. Entpackt und kompiliert -> su hab ich davon dann nach /home/shiva/usr/local/bin/su kopiert und den chroot shell dementsprechend angepasst

Code: Select all

#!/bin/bash
if [ "$1" = "-c" ]; then
        i=0;
        PARAMS="";
        for param in $*; do
                if [ $i -gt 0 ]; then
                        PARAMS="$PARAMS $param";
                fi
                let i++;
        done;
        sudo /usr/bin/chroot /home/$USER /usr/local/bin/su - $USER -c "$PARAMS"
else
        sudo /usr/bin/chroot /home/$USER /usr/local/bin/su - $USER
fi;
so das wars eigentlich soweit ;) und jetzt kommt halt wenn ich mich einlog ein:

Code: Select all

Last login: Tue Jan 20 20:21:48 2004 from p508bff29.dip.t-dialin.net
Hallo du kleiner Nasenbaer,
viel Spaß auf dem Nasenbaer System!
/usr/local/bin/su: user shiva does not exist
das /usr/local/bin/su ist aber das in der chroot umgebung des nutzers(nehm ich jetzt mal an weil er sich ja so einwandfrei anmeldet und den login zulässt ;)

so
hab ich was vergessen? gehör ich geköpft ;)

danke
gruß
Peter

captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Chroot Installation mit PAM -> su

Post by captaincrunch »

Na das nenne ich doch endlich mal eine vernünftige Fehlerbeschreibung. ;)

Was passiert denn, wenn du einfach mal als root im normalen System ein chroot /home/shiva ausführst, und im chroot dann mit su arbeitest?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: Chroot Installation mit PAM -> su

Post by standbye »

Code: Select all

nasenbaer:~ # chroot /home/shiva
nasenbaer:/ # su - shiva
su: user shiva does not exist
also das gleiche -> deswegen bin ich auf die idee gekommend as das ganze su PAM oder so braucht -> kenn mich mit pam als authentifizierung nicht wirklich so aus

captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Chroot Installation mit PAM -> su

Post by captaincrunch »

Ã?hm...irgendwie lese ich oben nichts von /etc/shadow im chroot-System?!? ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: Chroot Installation mit PAM -> su

Post by standbye »

wie recht du hattest :D gabs auf jedenfall keine.

naja hab sie erstellt und gefüllt

Code: Select all

root:xxx:0:0:10000::::
shiva:xxx:12437:0:99999:7:0::

gleiches spiel trotzdem

Code: Select all

Last login: Tue Jan 20 21:24:57 2004 from p508bff29.dip.t-dialin.net
Hallo du kleiner Nasenbaer,
viel Spaß auf dem Nasenbaer System!
/usr/local/bin/su: user shiva does not exist
[/code]

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: Chroot Installation mit PAM -> su

Post by standbye »

so meinereiner hat blöderweise einen fehler gehabt und zwar war die chroot binary in /usr/local/bin/chroot gelegen..
nachdem ich den fehler jetzt behoben habe geht es schhon weiter

Code: Select all

login as: shiva
Sent username "shiva"
shiva@standbye.com's password:
Last login: Wed Jan 21 10:54:38 2004 from 195.185.33.210
Hallo du kleiner Nasenbaer,
viel Spaß auf dem Nasenbaer System!
could not open session
das kommt wenn ich nun versuche mich einzuloggen per ssh

wenn ich da ganze local mache

Code: Select all

chroot /home/shiva
su - shiva
funkt das jetzt einwandfrei

jemand ne idee ;)

nn4l
Posts: 172
Joined: 2002-06-19 07:06

Re: Chroot Installation mit PAM -> su

Post by nn4l »

ldd meldet nicht immer alle erforderlichen libs. Probier

Code: Select all

chroot /home/shiva /bin/strace /bin/bash
das hatte mir mal geholfen. Oder kopier' testweise mal das komplette /lib Verzeichnis.

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: Chroot Installation mit PAM -> su

Post by standbye »

hoi ;) ich weis zwr nicht was ich mit der ausgabe von dem programm machen soll aber haben wirklich ein paar libs gefehlt danke ;))


der mist geht jetzt

cybermage
Posts: 158
Joined: 2002-12-10 22:10
Location: Ausgburg (Germany)

Re: Chroot Installation mit PAM -> su

Post by cybermage »

ich hab eigentlihc alles genauso gemacht bis auf die tatsache dass mein selber kompiliertes su in [chroot]/bin liegt.
und ich bekomme ... wen wunderts ...
/bin/su: user peon does not exist

shadow, group und passwd sind vorhanden (ich kann die entsprechenden einträge doch einfach aus dem base system übernehmen ... oder?)

ich bin etwas ratlos ...