นี่คือสิ่งที่ฉันไม่สามารถหาข้อมูลได้มากนักเพื่อช่วยในการชื่นชม
ความเข้าใจของฉันจึง ใช้ไฟล์ต่อไปนี้:
-rw-r----- 1 root adm 69524 May 21 17:31 debug.1
ผู้ใช้phil
ไม่สามารถเข้าถึงไฟล์นี้:
phil@server:/var/log$ head -n 1 debug.1
cat: debug.1: Permission denied
หากphil
ถูกเพิ่มลงในadm
กลุ่มสามารถ:
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
อย่างไรก็ตามหากกระบวนการเริ่มต้นในขณะที่ตั้งค่าไว้อย่างชัดเจนuser:group
จะphil:phil
ไม่สามารถอ่านไฟล์ได้ กระบวนการเริ่มต้นเช่นนี้:
nice -n 19 chroot --userspec phil:phil / sh -c "process"
หากกระบวนการนั้นเริ่มต้นขึ้นphil:adm
ก็สามารถอ่านไฟล์ได้:
nice -n 19 chroot --userspec phil:adm / sh -c "process"
ดังนั้นคำถามคือ:
มีอะไรพิเศษเกี่ยวกับการเรียกใช้กระบวนการด้วยคำสั่งผสมของผู้ใช้ / กลุ่มที่ป้องกันไม่ให้กระบวนการสามารถเข้าถึงไฟล์ที่กลุ่มเสริมของผู้ใช้นั้นเป็นเจ้าของและมีวิธีแก้ไขปัญหานี้หรือไม่?