ฉันเข้าใจchmodและchownบิตการอนุญาตทำงานอย่างไร แต่มีระบบการอนุญาตอื่นภายใน Linux ACLด้วยsetfaclและgetfaclสิ่งนี้ทำให้ฉันสงสัย
อะไรคือความแตกต่างระหว่างระบบควบคุมการอนุญาตทั้งสองระบบ พวกเขารบกวนซึ่งกันและกันหรือไม่?
ฉันเข้าใจchmodและchownบิตการอนุญาตทำงานอย่างไร แต่มีระบบการอนุญาตอื่นภายใน Linux ACLด้วยsetfaclและgetfaclสิ่งนี้ทำให้ฉันสงสัย
อะไรคือความแตกต่างระหว่างระบบควบคุมการอนุญาตทั้งสองระบบ พวกเขารบกวนซึ่งกันและกันหรือไม่?
คำตอบ:
หนึ่งไม่ดีกว่าอื่น ๆ พวกเขาเป็นเพียงวิธีการต่าง ๆ และวิธีคิด
คุณสามารถใช้ระบบการอนุญาตทั้งสองบนเส้นทางเดียวกันโดยไม่มีปัญหา
พวกเขาแทรกแซงซึ่งกันและกันเมื่อแก้ไขกลุ่มเจ้าของและสิทธิ์อื่น ๆ ของเจ้าของ: เมื่อตั้งค่าปัจจุบันสำหรับสิ่งเหล่านี้จาก setfacl จริง ๆ แล้วมันจะตั้งค่าสิทธิ์ posix ไม่ใช่ ACL
สิทธิ์ Posix อนุญาตเฉพาะเจ้าของกลุ่มที่เป็นเจ้าของและสิทธิ์ "ทุกคน" ในขณะที่ ACL อนุญาตให้ผู้ใช้และกลุ่ม "เจ้าของ" หลายคน ACL ยังอนุญาตให้ตั้งค่าการอนุญาตเริ่มต้นสำหรับไฟล์ใหม่ในโฟลเดอร์
คุณสามารถเพิ่มการจัดการสิทธิ์เพิ่มเติมที่ด้านบนของทั้งคู่ด้วย apparmor หรือ selinux เพื่อการควบคุมที่เข้มงวดยิ่งขึ้น
ls -lใส่ a +ท้ายอักขระการอนุญาตเพื่อระบุว่ามี ACL ถ้ามี ACL อยู่แล้วการอนุญาตพื้นฐานจะไม่บอกเรื่องราวทั้งหมด: ACL จะแทนที่การอนุญาต POSIX
+อย่างน้อยจะหยุดฉันจากการปิดตัวเองยาม
สิทธิ์ Unix แบบคลาสสิกที่กำหนดโดย chmod (อ่าน / เขียน / ดำเนินการผู้ใช้ / กลุ่ม / อื่น ๆ ) มีอยู่นานกว่า ACL มาก หาก ACL มีอยู่ตั้งแต่เริ่มต้นแล้วจะไม่มี chmod อย่างที่เรารู้ อย่างไรก็ตาม, เนื่องจาก chmod มีอยู่เป็นเวลานาน, หลาย ๆ แอปพลิเคชั่นเรียกมัน, รูปแบบไฟล์เก็บถาวรจำนวนมากสนับสนุนสิทธิ์แบบคลาสสิก, ฯลฯ คุณสามารถแสดงสิทธิ์ chmod ด้วย ACL; พวกเขาทำหน้าที่เป็นจุดเริ่มต้นสำหรับ ACL
ดูความสำคัญของผู้ใช้และเจ้าของกลุ่มในการอนุญาตให้ใช้ไฟล์และความสำคัญของ ACLS เมื่อผู้ใช้อยู่ในหลายกลุ่มเพื่อรับการรักษาโดยละเอียดเกี่ยวกับวิธีการควบคุมการเข้าถึงใน ACL
chmodคำสั่งยังควบคุมธงบางอย่างที่ไม่ได้จริงๆสิทธิ์ แต่มักจะเรียกว่าสิทธิ์กระนั้น: setuid, setgidและเหนียวเล็กน้อย สิ่งเหล่านี้ไม่ได้รับอนุญาตเนื่องจากไม่มีผลกระทบต่อการเข้าถึงที่ได้รับอนุญาตในไฟล์ แต่วิธีการทำงานบางอย่างของไฟล์หลังจากที่ได้รับอนุญาต ไม่มีอะไรเช่นนี้กับ ACL
ls -l?
lsมี+ส่วนท้ายหรือเรียกใช้getfaclคำสั่งเพื่อแสดงสิทธิ์ทั้งหมดรวมถึง ACL
getfacl myFile?
ls -lฉันจะได้เห็นการอนุญาตให้โพสต์และ ACL ที่ จำกัด ไฟล์ต่อไปจะไม่แสดง? หรือสิทธิ์ของ posix จะได้รับการเคารพหรือไม่