Linux之文件的访问控制(acl列表)

acl释义
什么是acl?
acl全称(access control),其指代特殊用户对特殊文件有特殊权限。

下面是一个简单的举例。
比如说,你有三个用户,分别是“tecmint1”、“tecmint2”和“tecmint3”。每个用户都有一个共同的用户组,如“acl”。用户“tecmint1”希望,只有“tecmint2”用户才能读取和访问归“tecmint1”用户所有的文件,其他人都无权访问该文件。

访问控制列表(ACL)让我们可以做到同样这点。这些ACL让我们可以为某个用户、用户组或不在用户组列表中的任何用户的任何组授予权限。

以上来源于http://netsecurity.51cto.com/art/201405/440508.htm

当某文件存在权限列表时,其文件读写权限的末尾会出现一个“+“,这表示,通过ls -l 看到的权限是不真实的。此时,可通过getfacl命令显示文件的ACL规则。

命令格式:getfacl filename

[root@foundation32 ~]# ls -l /mnt/file
-rw-r--r--. 1 root root 0 Jul 22 21:52 /mnt/file

[root@foundation32 ~]$ getfacl /mnt/file
getfacl: Removing leading '/' from absolute path names
# file: mnt/file
# owner: root
# group: root
user::rw-
group::r--
other::r--

这里可以看到,其他人对/mnt/file文件仅拥有read权限。用户leo欲对/mnt/file进行写操作,系统显示不可行。

[root@foundation32 ~]# su - leo
Last login: Sat Jul 22 21:49:44 CST 2017 on pts/0
[leo@foundation32 ~]$ vim /mnt/file

以下来自vim编辑器的提醒:
"/mnt/file" [readonly] 1L, 4C   
-- INSERT -- W10: Warning: Changing a readonly file
E45: 'readonly' option is set (add ! to override) 

现在,切换回root用户设置用户leo对/mnt/file拥有rws权限。

命令格式:setfacl -m <u|g>:<username|groupname>:权限  文件|目录
-m   #设定
u    #用户
g    #组
[leo@foundation32 ~]$ logout
[root@foundation32 ~]# setfacl -m u:leo:rwx /mnt/file

查看/mnt/file文件属性,发现读写权限的末尾出现一个“+“。

[root@foundation32 ~]# ls -l /mnt/file
-rw-rwxr--+ 1 root root 0 Jul 22 21:52 /mnt/file

[root@foundation32 ~]# getfacl /mnt/file
getfacl: Removing leading '/' from absolute path names
# file: mnt/file
# owner: root
# group: root
user::rw-
user:leo:rwx
group::r--
mask::rwx
other::r--

再次切换回leo用户,发现可以正常对/mnt/file进行写操作了。

以下是删除及关闭acl列表的命令格式。

//删除列表中的用户或者组
setfacl -x <u|g>:<username|groupname>   文件|目录
//关闭列表
setfacl -b 文件|目录

acl 默认权限设置
当我们需求某个目录对于student可写,并且目录中新建的子目录对student也可写时,就要设定默认权限。

setfacl -m d:u:student:rwx  /westos

注:默认权限只对目录中新建立的文件或者目录生效,对已经建立的文件无效,对于目录本身也无效

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值