user einsperren

SpecialAgent

BSD Trainee
Hey,

möchte gerne User userXY mit chroot einsperren... bedeutet, wenn er sich einloggt soll er nicht auf /, etc zugreifen dürfen...

hab /bin/ksh /bin/ls, etc.. nach /home/userXY/bin kopiert... also alle programme die er braucht... sh und csh auch...

wenn ich jetzt

sudo chroot -u userXY /home/userXY /bin/ksh eingebe lande ICH in der chroot umgebung... und bekomme als prompt nur $.... wenn ich jetzt exit eingebe bin ich wieder in meiner ursprünglichen umgebung... das chroot ist also nicht mehr da... will aber das das immer dann da ist wenn der userXY sich einloggt....

nen kumpel hat mit den tipp gegeben in /etc/passwd die stelle /bin/ksh beim userXY durch "chroot -u userXY /home/userXY /bin/ksh" auszutauschen, so daß chroot immer dann ausgeführt wird, wenn er sich einloggt.... er ist beim einloggen allerdings nicht eingesperrt...

was mach ich falsch? gibt es noch einen anderen weg nach rom?

Danke für die Hilfe... gruß SA
 
Hallo,

ich denke das klappt nicht, weil der Befehl schon nicht mehr mit root-Recheten ausgefuehrt wird.
Eine Moeglichkeit waere sudo (wobei ich aber ein schlechtes Gefuehl habe), oder Du
bastelst Dir eine Wrapper-Shell (mit suid), die nichts weiter tut, als chroot auszufuehren, die Privilegien wieder abzugeben und anschliessend die eigentliche
Shell zu starten

Gruss
PhysChemist
 
Heul,

also mal ganz ehrlich... ich finde nichts schwerer als ein chroot einzurichten. Es ist schon das zweite mal das ich daran verzweifle... manchmal frage ich mich wieso openBSD als sicherstes Betriebssystem gilt wenn man nicht eine einfache Sache, die die Sicherheit ordentlich anhebt, ganz easy hinbekommen kann...

nungut... ich habe ein Tool gefunden, das mir die Arbeit abnehmen soll... JailKit... aber, wie gesagt, irgendeiner will nicht das ich chroote... ich kann es nicht kompilieren.. Fehlermeldung:
/usr/bin/install -c -g 0 -o root -m 0755 jk_addjailuser /usr/sbin
gmake[1]: Leaving directory `/home/martin/jailkit-1.2/py'
gmake[1]: Entering directory `/home/martin/jailkit-1.2/man'
/usr/bin/install -c -d -m 755 /usr/share/man/man8/
for file in jailkit.8.gz jk_chrootsh.8.gz jk_lsh.8.gz jk_socketd.8.gz jk_init.8.gz jk_check.8.gz jk_cp.8.gz jk_chrootlaunch.8.gz jk_procmailwrapper.8.gz jk_addjailuser.8.gz ; do \
/usr/bin/install -c -g 0 -o root -m 0644 ${file} /usr/share/man/man8/ ;\
done
gmake[1]: Leaving directory `/home/martin/jailkit-1.2/man'
# test if the jk_chrootsh is already in /etc/shells
if ! grep /usr/sbin/jk_chrootsh /etc/shells ; then \
@echo "appending /usr/sbin/jk_chroots to /etc/shells";\
echo /usr/sbin/jk_chrootsh >> /etc/shells ;\
fi
/bin/sh: @echo: not found



Warum auch immer.... habs mit make und mit gmake ausprobiert und (g)make install auch mit sudo.... langsam verzweifel ich wirklich.... warum ist das sooooo schwer?

;-)

Gruss..
 
Nach dem compilieren mit $EDITOR Makefile öffnen.
Zeile 44 und Zeile 55 die @-Zeichen vor dem echo löschen :)

Wenn es eine andere Lösung gibt sagt es bitte.

[EDIT] Dies kannst Du natürlich auch vorher machen :)
Die Befehllzeilenoptionen für "rmdir" stimmen auch nicht für OBSD.
 
Zuletzt bearbeitet:
Zurück
Oben