Linux系统文件访问控制列表

linux系统中的RWX权限、特殊权限、隐藏权限都是对某一类用户设置的,

而如果希望对某个指定的用户进行单独的权限设置的话就需要用到文件的

访问控制权限了。

我们可以对普通文件或目录进行设置ACL,通俗来说ACL就是设置指定的特定用户或

用户组对某个文件的操作权限。  

如果对某个目录设置了访问控制策略,那么子文件则继承其访问控制策略,而若对文件

设置了访问控制策略,则不再继承上级目录的控制策略。

  • getfacl 命令用于显示文件的ACL规则,格式为“getconf 文件名”
[root@localhost ~]# getfacl /root
getfacl: Removing leading '/' from absolute path names
# file: root
# owner: root
# group: root
user::r-x
group::r-x
other::---

现在,pentest用户因工作原因需要有读取root家目录文件的权限,直接尝试cd进去肯定会报错。

[root@localhost ~]# su - pentest
上一次登录:五 9月  9 14:13:46 CST 2016pts/1 上
[pentest@localhost ~]$ cd /root/
-bash: cd: /root/: 权限不够
[pentest@localhost ~]$

现在,切换到root用户设置pentest对/root有rws权限

[pentest@localhost ~]$ su - root
密码:
上一次登录:五 9月  9 14:27:33 CST 2016pts/1 上
[root@localhost ~]# setfacl -Rm u:pentest:rwx /root

再次切换到pentest用户发现可以使用ls查看/root目录了。

[root@localhost ~]# su - pentest
上一次登录:五 9月  9 14:51:06 CST 2016pts/1 上
[pentest@localhost ~]$ cd /root/
[pentest@localhost root]$ ls
anaconda-ks.cfg       testA  testC  公共  视频  文档  音乐
initial-setup-ks.cfg  testB  yum    模板  图片  下载  桌面

此时再次用getfacl查看一下/root目录的权限特征吧,发现多了一条记录:user:pentest:rwx

[pentest@localhost root]$ getfacl /root/
getfacl: Removing leading '/' from absolute path names
# file: root/
# owner: root
# group: root
user::r-x
user:pentest:rwx
group::r-x
mask::rwx
other::---
原文地址:https://www.cnblogs.com/tdcqma/p/5856738.html