1. ACL訪問控制列表的功能
早期Linux系統(tǒng)的權(quán)限控制主要依賴于UGO (user, group, others) 模型,然而這種權(quán)限控制由于靈活度不高具有一定的局限性,由于存在業(yè)務(wù)需求,為了實現(xiàn)更加靈活和精確的權(quán)限控制,后續(xù)開源組織推出了ACL(Access Control List)權(quán)限控制模塊作為傳統(tǒng)UGO模型的補充。
ACL的功能是給文件設(shè)置特權(quán)用戶,即允許特定用戶訪問。
例如,f1文件權(quán)限644,屬主root,屬組root,則用戶zhang無權(quán)寫入,可給zhang設(shè)定特權(quán),僅允許zhang寫入。若使用o+w的操作,則不僅是用戶zhang,其他用戶也具備了寫入權(quán)限。為了滿足這樣的業(yè)務(wù)需求,我們可以使用ACL提供的相關(guān)命令來實現(xiàn)。
2. ACL訪問控制列表的常用命令
設(shè)置ACL命令的常用方式如下。
①getfacl f1:查看文件f1的ACL信息。
②setfacl -m u:zhang:rw f1:針對文件f1,f1文件的所屬者和所屬組均為root,普通用戶zhang沒有w權(quán)限,可以用setfacl給單獨普通用戶zhang添加文件f1的rw權(quán)限,讓用戶zhang也能像用戶root一樣讀寫f1文件,這個過程稱為設(shè)置用戶zhang的ACL。setfacl命令的-m選項表示設(shè)置狀態(tài)為“修改”,u:zhang:rw表示設(shè)置用戶zhang的ACL為rw,如下面操作所示,用戶zhang對f1有rw權(quán)限,可嘗試切換到zhang用戶并編輯f1文件加以驗證。
[root@jump ~]# cd /mnt [root@jump mnt]# echo aaaaaa > f1 [root@jump mnt]# getfacl f1 # file: f1 # owner: zhang # group: zhang user::rw- group::rw- other::r-- [root@jump mnt]# setfacl -m u:zhang:rw f1 [root@jump mnt]# getfacl f1 # file: f1 # owner: zhang # group: zhang user::rw- user:zhang:rw- group::rw- mask::rw- other::r-- [root@jump mnt]# su - zhang [zhang@jump ~]$ cd /mnt [zhang@jump mnt]$ ls -l f1 -rw-rw-r--+ 1 zhang zhang 7 Feb 26 15:42 f1 [zhang@jump mnt]$ echo bbbbbb > f1 [zhang@jump mnt]$ cat f1 bbbbbb |
④setfacl -x u:zhang f1:撤銷單個ACL。
⑤setfacl -b f1:撤銷文件的所有ACL。
3. CentOS7文件屬性設(shè)置
屬性,即文件所具有的某些特性,可使用lsattr命令查看,舉例如下。
lsattr -aR /root:查看/root下的文件及目錄權(quán)限。-a用于顯示指定目錄下的文件及目錄的屬性,-R用于遞歸顯示,即查看/root下的所有文件包括子目錄文件的文件屬性。
文件的常用屬性如下表所示。
可以用chattr命令,使用+、-號來給文件增加或刪除屬性,如下操作所示。
[root@jump ~]# cd /mnt [root@jump mnt]# lsattr -aR f1 ---------------- f1 [root@jump mnt]# echo bbbbbb >> f1 [root@jump mnt]# chattr +i f1 [root@jump mnt]# lsattr -aR f1 ----i----------- f1 [root@jump mnt]# echo cccccc >> f1 -bash: f1: Permission denied [root@jump mnt]# chattr -i f1 [root@jump mnt]# lsattr -aR f1 ---------------- f1 [root@jump mnt]# echo cccccc >> f1 [root@jump mnt]# cat f1 bbbbbb bbbbbb cccccc |
可知在給f1增加i屬性前,f1可寫入,給f1增加了i屬性后,f1處于只讀狀態(tài),可使用lsattr命令查看,但不可再寫入,之后去除i屬性,f1又可寫入。
更多內(nèi)容
>>本文地址:http://www.yceu.cn/zhuanye/2021/69421.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?