<ก่อนหน้านี้ | Contents | ถัดไป>
4.3.2. สิทธิ์ของไฟล์
สิทธิ์ของไฟล์กำหนดสิทธิ์ที่ชัดเจนที่คอมพิวเตอร์หรือผู้ใช้มีต่อไดเร็กทอรี ไฟล์ หรือชุดของไฟล์ สิทธิ์ดังกล่าวอาจถูกกำหนดโดยการแก้ไข /etc/samba/smb.conf ไฟล์และการระบุสิทธิ์ที่ชัดเจนของการแชร์ไฟล์ที่กำหนด
ตัวอย่างเช่น หากคุณกำหนดแซมบ้าแชร์ที่เรียกว่า การแชร์ และปรารถนาที่จะให้ อ่านอย่างเดียว สิทธิ์ให้กับกลุ่มผู้ใช้ที่เรียกว่า qaแต่ต้องการอนุญาตให้เขียนถึงการแบ่งปันโดยกลุ่มที่ชื่อ ดูแลระบบ และผู้ใช้ที่ชื่อ vincentจากนั้นคุณสามารถแก้ไข /etc/samba/smb.conf ไฟล์และเพิ่มรายการต่อไปนี้ภายใต้ [แบ่งปัน] รายการ:
รายการอ่าน = @qa
เขียนรายการ = @sysadmin, vincent
การอนุญาต Samba ที่เป็นไปได้อีกอย่างหนึ่งคือการประกาศ การบริหาร สิทธิ์ในทรัพยากรที่ใช้ร่วมกันโดยเฉพาะ ผู้ใช้ที่มีสิทธิ์ระดับผู้ดูแลระบบสามารถอ่าน เขียน หรือแก้ไขข้อมูลใด ๆ ที่มีอยู่ในทรัพยากรที่ผู้ใช้ได้รับสิทธิ์การดูแลระบบอย่างชัดแจ้ง
ตัวอย่างเช่น หากคุณต้องการให้ผู้ใช้ เมลิสสา สิทธิ์ของผู้ดูแลระบบไปยัง การแชร์ ตัวอย่าง คุณจะแก้ไข /etc/samba/smb.conf ไฟล์และเพิ่มบรรทัดต่อไปนี้ภายใต้ [แบ่งปัน] รายการ:
ผู้ดูแลระบบผู้ใช้ = melissa
หลังจากแก้ไข /etc/samba/smb.conf, รีสตาร์ท Samba เพื่อให้การเปลี่ยนแปลงมีผล:
sudo systemctl รีสตาร์ท smbd.service nmbd.service
สำหรับ อ่านรายการ และ เขียนรายการ ในการทำงานโหมดความปลอดภัยของแซมบ้าจะต้อง ไม่ ตั้งเป็น ความปลอดภัย = แบ่งปัน
ตอนนี้ Samba ได้รับการกำหนดค่าให้จำกัดกลุ่มที่สามารถเข้าถึงไดเร็กทอรีที่ใช้ร่วมกันได้แล้ว จำเป็นต้องอัปเดตการอนุญาตของระบบไฟล์
การอนุญาตไฟล์ Linux แบบดั้งเดิมไม่สามารถจับคู่กับรายการควบคุมการเข้าถึงของ Windows NT (ACL) ได้ โชคดีที่ POSIX ACL มีให้ใช้งานบนเซิร์ฟเวอร์ Ubuntu ซึ่งให้การควบคุมที่ละเอียดยิ่งขึ้น ตัวอย่างเช่น เพื่อเปิดใช้งาน ACLs on / srv ระบบไฟล์ EXT3 แก้ไข / etc / fstab การเพิ่มไฟล์ ACL ตัวเลือก:
UUID=66bcdd2e-8861-4fb0-b7e4-e61c569fe17d /srv ext3 noatime,relatime,acl 0 1
จากนั้นติดตั้งพาร์ติชั่นใหม่:
sudo mount -v -o ติดตั้งใหม่ /srv
ตัวอย่างข้างต้นถือว่า / srv บนพาร์ติชันแยกต่างหาก ถ้า / srvหรือที่ใดก็ตามที่คุณกำหนดค่าเส้นทางการแชร์ของคุณ เป็นส่วนหนึ่งของ / อาจจำเป็นต้องรีบูตพาร์ติชั่น
เพื่อให้ตรงกับการกำหนดค่าแซมบ้าด้านบน ดูแลระบบ กลุ่มจะได้รับสิทธิ์ในการอ่าน เขียน และดำเนินการ /srv/samba/แชร์ที่ qa กลุ่มจะได้รับสิทธิ์ในการอ่านและดำเนินการ และไฟล์จะเป็นของชื่อผู้ใช้ เมลิสสา. ป้อนข้อมูลต่อไปนี้ในเทอร์มินัล:
sudo chown -R เมลิสสา /srv/samba/share/ sudo chgrp -R sysadmin /srv/samba/share/
sudo setfacl -R -mg:qa:rx /srv/samba/share/
คำสั่ง setfacl ด้านบนให้ ดำเนินการ สิทธิ์ไปยังไฟล์ทั้งหมดใน /srv/samba/แชร์
ไดเร็กทอรีที่คุณอาจต้องการหรือไม่ต้องการ
จากไคลเอนต์ Windows คุณควรสังเกตว่ามีการอนุญาตไฟล์ใหม่ ดูหน้า man acl และ setfacl สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ POSIX ACL