linux用户用户组与ACL (3)

前文所述的规则又称为UGO(user,group,others)规则,这套机制比较简单。在自主访问控制中,还有ACL规则,作为补充。在Linux系统中,ACL用于设定用户针对文件的权限。

ACL主要有两种命令进行控制,getfacl和setfacl。

# 例子源于https://blog.csdn.net/pwl999/article/details/110878563 [root@localhost ~]# useradd zhangsan [root@localhost ~]# useradd lisi [root@localhost ~]# useradd st [root@localhost ~]# groupadd tgroup // 添加需要试验的用户和用户组,省略设定密码的过程 [root@localhost ~]# mkdir /project #建立需要分配权限的目录 [root@localhost ~]# chown root:tgroup /project/ // 改变/project目录的属主和属组 [root@localhost ~]# chmod 770 /project/ // 指定/project目录的权限 [root@localhost ~]# ll -d /project/ drwxrwx--- 2 root tgroup 4096 1月19 04:21 /project/ // 查看一下权限,已经符合要求了 // 这时st学员来试听了,如何给她分配权限 [root@localhost ~]# setfacl -m u:st:rx /project/ // 给用户st赋予r-x权限,使用"u:用户名:权限" 格式 [root@localhost /]# cd / [root@localhost /]# ll -d project/ drwxrwx---+ 3 root tgroup 4096 1月19 05:20 project/ // 使用ls-l査询时会发现,在权限位后面多了一个"+",表示此目录拥有ACL权限 [root@localhost /]# getfacl project // 查看/prpject目录的ACL权限 #file: project <-文件名 #owner: root <-文件的属主 #group: tgroup <-文件的属组 user::rwx <-用户名栏是空的,说明是属主的权限 user:st:r-x <-用户st的权限 group::rwx <-组名栏是空的,说明是属组的权限 mask::rwx <-mask权限 other::--- <-其他人的权限 // 大家可以看到,st 用户既不是 /prpject 目录的属主、属组,也不是其他人,我们单独给 st 用户分配了 r-x 权限。这样分配权限太方便了,完全不用先辛苦地规划用户身份了。 推荐阅读

鸟哥的Linux私房菜--第四版 第13章

Linux DAC权限管理详解

参考文献

用户ID--维基百科

杜文亮. 计算机安全导论:深度实践[M]. 高等教育出版社, 2020.

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzwxwz.html