กลุ่มภายในสิทธิ์ของไฟล์กลุ่ม


13

ฉันพยายามค้นหาสิ่งนี้ที่นี่ แต่ก็ไม่สามารถขอโทษถ้ามันซ้ำกัน

บอกว่าฉันมี 2 กลุ่มและผู้ใช้: group1, group2, user1 ที่มีโครงสร้างต่อไปนี้: group1 เป็นสมาชิกของกลุ่ม 2 ผู้ใช้ 1 เป็นสมาชิกของ group1

ตอนนี้บอกว่าฉันมีไฟล์ต่อไปนี้ที่มีสิทธิ์ที่เกี่ยวข้อง

file1 root:group1 660
file2 root:group2 660

ตอนนี้เมื่อฉันลงชื่อเข้าใช้ user1 ฉันสามารถแก้ไข file1 แต่ไม่สามารถแก้ไข file2 ได้ ย่อการเพิ่ม user1 ไปยัง group2 มีวิธีการทำเช่นนี้หรือไม่? หรือไม่มีทาง?

ฉันใช้ Ubuntu btw


หากฉันไม่เข้าใจผิดการอนุญาตตามกลุ่มแบบคลาสสิกใน Linux ไม่อนุญาตให้คุณใส่กลุ่มไว้ในกลุ่มอื่น ดังนั้นคุณได้ติดตั้งบางสิ่งที่เปิดใช้งานคุณลักษณะนี้หรือไม่
Gunther Struyf

ผู้ใช้สามารถเป็นสมาชิกของหลายกลุ่ม หากคุณเพิ่ม User1 ไปยัง group2 เขาจะสามารถเปลี่ยน File2 ได้ คำสั่งที่คุณเลือกจะเป็น useradd
user1146332

@GuntherStruyf ฉันไม่ได้เปลี่ยนแปลงอะไรเลย ... จากสิ่งที่ฉันสามารถบอกได้ว่า Ubuntu จะอนุญาตโดยค่าเริ่มต้น ...
Aram Papazian

@ user1146332 จุดทั้งหมดคือการไม่เพิ่ม user1 ไปยัง group2 หากเป็นเพียงวิธีแล้วฉันจะทำ แต่ในทางทฤษฎีฉันไม่ต้องการกลุ่มโครงสร้างการทำรัง ...
ซีเรีย Papazian

คำตอบ:


15

ไม่มีสิ่งเช่นกลุ่มที่เป็นสมาชิกของกลุ่ม กลุ่มโดยนิยามมีชุดสมาชิกผู้ใช้ ฉันไม่เคยได้ยินเกี่ยวกับคุณสมบัติที่จะให้คุณระบุ“ กลุ่มย่อย” ที่สมาชิกของกลุ่มย่อยจะได้รับการเป็นสมาชิกโดยอัตโนมัติในซูเปอร์กรุ๊ปเมื่อเข้าสู่ระบบ หาก/etc/groupรายการgroup1ในฐานะสมาชิกของgroup2มันจะกำหนดผู้ใช้ที่เรียกว่าgroup1(หากผู้ใช้ดังกล่าวมีอยู่ซึ่งเป็นไปได้: ชื่อผู้ใช้และชื่อกลุ่มอยู่ในพื้นที่ชื่อที่แตกต่างกัน)

หากคุณต้องการให้ user1 มีสิทธิ์เข้าถึง file2 คุณมีวิธีแก้ไขปัญหาต่าง ๆ :

  • ทำให้file2สามารถเข้าถึงได้ทั่วโลก (คุณอาจไม่ต้องการสิ่งนี้)
  • ทำให้ผู้ใช้ 1 เป็นเจ้าของ file2: chown user1 file2
  • เพิ่ม user1 ไปยัง group2: adduser user1 group2
  • เพิ่ม ACL เพื่อfile2ให้สิทธิ์การเข้าถึง user1 หรือ group`:

    setfacl -m user:user1:rw file2
    setfacl -m group:group1:rw file2
    

    ดูที่การสร้างไฟล์ใหม่ทั้งหมดในกลุ่มที่เข้าถึงกลุ่มได้จากการเปิดใช้งาน ACL


7
ใช่ unix / linux ไม่สนับสนุนกลุ่มที่ซ้อนกัน มันจะเป็นประโยชน์ถ้ามันทำ แต่มันก็ไม่ได้ Windows ทำและ Active Directory ทำ LDAP ก็เช่นกันดังนั้นควรเป็นไปได้ถ้าข้อมูลบัญชีและกลุ่มอยู่ใน LDAP แทนที่จะเป็นในไฟล์ / etc / passwd และ / etc / group ... แต่มันเกินความจริงเมื่อมีวิธีแก้ปัญหาง่ายๆเช่น ACLs (หรือเพียงแค่เพิ่มผู้ใช้ ทั้งกลุ่ม)
CAS
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.