Dies ist etwas, über das ich nicht viele Informationen finden konnte, daher wäre jede Hilfe dankbar.
Mein Verständnis ist also. Nehmen Sie die folgende Datei:
-rw-r----- 1 root adm 69524 May 21 17:31 debug.1
Der Benutzer phil
kann nicht auf diese Datei zugreifen:
phil@server:/var/log$ head -n 1 debug.1
cat: debug.1: Permission denied
Wenn phil
es der adm
Gruppe hinzugefügt wird , kann es:
root@server:~# adduser phil adm
Adding user `phil' to group `adm' ...
Adding user phil to group adm
Done.
phil@server:/var/log$ head -n 1 debug.1
May 21 11:23:15 server kernel: [ 0.000000] DMI: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.7.5.1-0-g8936dbb-20141113_115728-nilsson.home.kraxel.org 04/01/2014
Wenn jedoch ein Prozess gestartet wird, während das explizit user:group
auf gesetzt ist phil:phil
, kann die Datei nicht gelesen werden. Der Prozess begann folgendermaßen:
nice -n 19 chroot --userspec phil:phil / sh -c "process"
Wenn der Prozess als gestartet wird phil:adm
, kann er die Datei lesen:
nice -n 19 chroot --userspec phil:adm / sh -c "process"
Die Frage ist also wirklich:
Was ist das Besondere daran, einen Prozess mit einer bestimmten Benutzer- / Gruppenkombination auszuführen, die verhindert, dass der Prozess auf Dateien zugreifen kann, die zusätzlichen Gruppen dieses Benutzers gehören, und gibt es eine Möglichkeit, dies zu umgehen?