เป็นไปได้หรือไม่ที่จะใช้ระบบการจอง "ชื่อ" โดยใช้สิทธิ์การใช้ไฟล์ linux


10

ฉันมีเซิร์ฟเวอร์ผู้ใช้หลาย linux ที่มีผู้ใช้มากกว่า 100 คนใน / etc / passwd

ฉันต้องการอนุญาตให้ผู้ใช้ "หนังสือ" / "จอง" ชื่อที่พวกเขาชอบ (ในกรณีนี้คือโดเมนย่อย แต่รายละเอียดนั้นไม่สำคัญ)

ฉันได้สร้างไดเรกทอรีชื่อ/reservationsและด้วย chmod 777

หากผู้ใช้ johndoe ทำtouch /reservations/coolsiteเขาจะระบุว่าเขาต้องการ "เป็นเจ้าของ" ชื่อ "ไซต์ยอดนิยม"

ควรตั้งค่า "กลไก" เพื่อให้

  • johndoe สามารถเปลี่ยนใจได้ในภายหลังและrm /reservations/coolsiteยกเลิกการจองชื่อนั้น

  • ผู้ใช้รายอื่นไม่ได้รับอนุญาตให้touch /reservations/coolsiteเพราะ johndoe ขอให้มันก่อน

  • หาก johndoe rmไฟล์ของเขาผู้ใช้รายอื่นได้รับอนุญาตให้จอง

  • ผู้ใช้ไม่สามารถrm / rename / mv / etcไฟล์อื่น ๆได้

  • ผู้ใช้ johndoe สามารถจองหลายรายการโดยทำ touch /reservations/coolsite && touch /reservations/coolsite2

สิ่งนี้เป็นไปได้หรือไม่ที่ใช้กลไกการอนุญาตลินุกซ์มาตรฐานบางประเภท?

ฉันเกลียดที่จะใช้ชีวิตแบบนี้ความสามารถของฉันกลายเป็นสนิมขึ้นมาตั้งแต่วันทับทิมมาพร้อมกับผมสีบลอนด์หยักของเธอ ...


ฉันไม่เห็นอะไรเลยที่นี่นอกศาสนพิธี สร้าง "coolsite" เป็น "700" (ไม่มีการอนุญาตสำหรับกลุ่มและอื่น ๆ ) และมีเพียงผู้ใช้ + admin เท่านั้นที่สามารถทำสิ่งนี้ได้ คนอื่น ๆ ทั้งหมดได้รับอนุญาตถูกปฏิเสธ
Rinzwind

ดังนั้นด้วยตนเองแนะนำให้ผู้ใช้จำ chmod 700 หลังจากtouch?
นักรบอเมริกัน - นินจา -

1
joshsverns ฉันคิดว่าคุณสามารถบังคับได้หรือไม่ (พร้อมumask) ดีจัง @perlduck
Rinzwind

ทำไมคุณไม่เขียนโปรแกรมเป็นทับทิม
ท่อ

คำตอบ:


31

สิ่งที่คุณขอไดเรกทอรี/reservationsคือสิ่งที่/tmpไดเรกทอรีมาตรฐานทำงาน:

ผู้ใช้ทุกคนสามารถสร้างไฟล์ในนั้นและมีเพียงเขาเท่านั้นที่ได้รับอนุญาตให้ลบหรือแก้ไขพวกเขา นี่คือความสำเร็จโดยtบิต (aka เหนียวบิต ) ในสิทธิ์ ไม่มีผู้ใช้ที่ต้องการสิทธิ์พิเศษหรือ umasks แล้ว

ดังนั้น:

chown root /reservations
chmod 1777 /reservations

คือทั้งหมดที่คุณต้องการ chown rootเป็นเพียงเพื่อป้องกันไม่ให้ผู้ใช้อื่น ๆ (ปกติ) จากรอบที่เล่นซอกับไดเรกทอรีที่ มันไม่จำเป็นจริงๆ อ่านเพิ่มเติมเกี่ยวกับบิตเหนียวที่นี่:

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.