控制对文件的访问
第二單元
控制對文件的訪問
?
ACL :訪問控制列表
?
一 權限列表的讀取
getfacl ??filename
?
# file: ?file 文件名稱
# owner:root 文件所有人
# group: root文件所有組
user::rw- 用戶權限
user:westos:rwx 特殊指派用戶及權限
group::rw- ????組權限
mask::rwx ?????可指派最大權限
other::r - - ??其他人權限
?
二 setfacl 用于設置或修改文件的 ACL(訪問控制列表)
修改文件的訪問控制列表后,原本 “ . ” 會變成“ + ”:
?
setfacl ?-m ?u:westos:rwx ?filename ??????????: 授予用戶 westos 讀寫權限
例:root在/mnt下創建一個文件westos,此時該文件的所有人和所有組均屬于root,想要讓westos用戶(對westos文件來說,westos用戶為其他人)擁有rwx的權限
?
setfacl ?-m ?g:redhat:rw ?filename ???????:授予組 redhat 讀寫權限
?
setfacl ?-m ?g:redhat:r ?filename ????????:授予組 redhat 讀的權限
?
setfacl ?-x ?u:westos ?filename ?????????????:刪除用戶 westos 的 ACL 權限
?
setfacl ?-m ?o::- ?filename ??????????????:修改其他所有人的權限為空,也可以寫o::0
?
?
?
三 ACL 掩碼及繼承
?
1 具有 ACL 的文件擁有一個 “ mask” ( 掩碼 ), 這個掩碼既
能夠限制擁有該文件的組的最大權限 , 有能 夠限制 ACL
中的補充用戶和組所擁有的最大權限
當你對文件的訪問權限進行修改后,ls ?-l ?后出現的權限會發生變化,顯現出來的是mask的值,要想看到真正的權限執行getfacl ?filename 即可。
此時也不能夠用chmod命令去修改權限值,因為此時修改的值為mask的值,會導致錯誤
修改方法:setfacl ?-m ?m:rwx ?file
?
?
2 目錄可以有 “ 默認 ACL” 條目 , 系統自動針對在該目錄中創建的新文件設置這些條目,這類似setgid權限的方法( 針對目錄時 ), 使得在該目錄中創建的新文件歸擁有該目錄的組所有。
setfacl -m d:u:bob:rw directory
?
?
?
?
?
?
?
?
?
?
?
?
?
轉載于:https://blog.51cto.com/12774272/1917844
總結
- 上一篇: 基础命令实验
- 下一篇: openstack基于mysql的问题修