acl访问控制列表

荒凉一梦 提交于 2019-11-26 05:18:34

acl控制列表作用:

——–举例:类似ftp例子,老师(teacher)创建了个目录ftp用于学生上交作业,老师可以有增、删、改、查权限,班级里的学生为(class1)组成员,学生只能有上传文件,不能修改和删除和查看,这个普通 u g o 权限就能办到,但是老师想找班长(banzhang)帮他改作业(增、删、改、查),且只能用班长自己的身份去操作里面的文件,肯定有人会说改掉这个目录所有者为banzhang就可以了,下次老师要自己看作业又得改回来所有者为teacher,这样就很麻烦,有没有什么办法可以让文件所有者同时有多个呢?可以,acl控制列表可以帮你,上面就是acl的作用,当然还可以设置所属组同时有多个。

用户相关目录和文件

#如果要彻底删除用户必须对这些文件和目录修改
/etc/passwd   /etc/shadow    /home/zhang3     /var/spool/mail  
groupadd teachers  #创建teachers组
groupadd class1    #创建class1组

useradd   -g  teachers   teacher1   #将用户teacher1加入teachers组
useradd   -g  class1  u1    #将用户u1加入class1组
useradd   -g  class1  u2        #同上
useradd   -g  class1  u3
useradd   -g  class1  zhang3

setfacl 设置acl 权限

-m        #设置一个ACL权限
     setfacl -m u:zhang3:rwx  /data/ftp1  #增加班长为所有者
-x        #取消一个ACL权限

         setfacl -x  g:class1  /data/ftp1
         setfacl -x  u:zhang3  /data/ftp1
-b        #清除所有的 ACL 权限
    取消所有的acl权限:setfacl  -b   ftp 1

getfacl 查询acl权限

#查询/data/ftp1目录的acl权限
getfacl   /data/ftp1 

# file: dir1        #目录名
# owner: root       #所属用户
# group: root       #所属组
user::rwx       #所属用户的权限    
user:zhang3:rwx         #effective:r-x  《---- 被umask 作用到,削减 w 权限
user:new1:r-x       #二级所属用户权限
user:new2:--x       #二级所属用户权限
group::r-x      #所属组权限
mask::r-x       #  除root外其他用户最高权限
other::---      #其他用户权限

ACL 中mask值的作用:


可以临时的将整个ACL列表中用户的权限,限制在 Umask的权限  之下。

*** 设置mask的方法  setfacl  -m  m:rwx    ftp1 

@@@@@@ 
 比 mask 大的权限会被削减,比mask小的, mask值 不作用。 
 除了  “root 用户”  权限之外,其他的  acl 用户和组(包括默认组),都会被mask 作用到
@@@@@@

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 mask   值,占用了 原先 文件属性中, group 的位置,          
 设置了acl的目录或者文件,它的  group 组权限的位置,会显示为acl的mask值。
如果看到权限位后 +号,那么想知道真实的所属组权限的话 只能用 getfacl 命令查看比较准确
getfacl /data1/class1 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@   

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!