PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : chroot: anpassen an User und Verzeichnisse



meka
08.08.13, 09:16
Hallo,

ich versuche in einem Buildserver die chroot zu wechseln, aber stoße immer wieder auf das Problem entweder super-user zu sein oder den User "jenkins" in die sudo'er Liste einzutragen, was etwas viel wäre, bzw. ihm generell chroot zu erlauben.

Ich versuche chroot so zu konfigurieren, dass wenn der user 'jenkins' ein chroot Call auf ein bestimmtes Verzeichnis oder einen sub-tree absetzt, dass ihm das ohne su-Rechte oder sudo/passwort erlaubt wird.

Weiß jemand ob man chroot so konfiguriert bekommt?

Danke und Gruß,
m

nopes
08.08.13, 15:12
Klar geht das, sudoers Syntax:
BENUTZER HOSTNAME=BEFEHL[,BEFEHL]Beispiel:
jenkins ALL=/etc/init.d/postgresql start,/etc/init.d/postgresql stopWas auch geht:
jenkins ALL=/etc/init.d/postgresql *Willst du kein Passwort eingeben:
jenkins ALL= NOPASSWD: /usr/sbin/chroot *

meka
08.08.13, 16:37
Danke, aber damit kann doch chroot jedes Verzeichnis zum root machen oder? Ich habe zumidnest nicht gesehen, dass damit Argumente möglich sind o.ä.

Rain_maker
08.08.13, 16:52
Danke, aber damit kann doch chroot jedes Verzeichnis zum root machen oder? Ich habe zumidnest nicht gesehen, dass damit Argumente möglich sind o.ä.

Klar geht das, ein "*" ist auch ein Argument, es zwingt Dich ja niemand genau diese Wildcard zu verwenden.


jenkins ALL=/etc/init.d/postgresql start,/etc/init.d/postgresql stopDas geht schließlich auch und "start" bzw. "stop" sind auch Argumente.

Nimm das Verzeichnis, welches erlaubt sein soll und fertig.

Mit

jenkins ALL=/usr/bin/chroot /pfad/zum/Verzeichnis ,/usr/bin/chroot /pfad/zum/Verzeichnis/geht man sicher, daß es egal ist, ob man z.B. durch auto-completion den "/" am Ende drin hat oder nicht.

nopes
08.08.13, 17:05
Oder du stellst was in dieser Art ein:
jenkins ALL= NOPASSWD: /usr/sbin/chroot /opt/src1/*,/usr/sbin/chroot /opt/src2/*Dein Vorhaben ist also relativ einfach machbar.

meka
09.08.13, 09:30
Super Danke... hab mich da irgendwie verguckt, dachte das gehört zum sodoer Syntax.
:o