ACL:访问控制列表: Access Control List即文件/目录的访问控制列表,能够针对任意指定的用centos
户/组设置权限
ACL将用户对一个文件访问权限就像是放在了一个列表里,列表的每一项分别对应了一个或一组ide
具体用户对该文件的特定访问权限。这就使任意的访问权限管理成为了可能。继承
设定ACL:
格式: setfacl [option] id:operand
#setfacl -m u:UID:PERM 设定用户
#setfacl -m g:GID:PERM 设定组
#setfacl -m g:UID:PERM 设定某个组的某个用户的acl权限
[注: id 用户 (查看用户的id信息)]
例:
setfacl -m u:centos:rw gentoo.c (对centos用户设定具备对gentoo.c具备读写权限)
设定掩码权限:
setfacl -m m::rw- 1.c (设置掩码权限)
setfacl -m u:centos:rwx 1.c
结果1.c的权限是rw而不是rwx,比rw少能够,比rw多就不行
查看ACL:
#getfacl (文件) 查看ACL
例:
getfacl gentoo.c(查看该文件的acl)
撤销ACL:
#setfacl -x u:UID (文件) 撤销用户权限
#setfacl -x g:GID 组 撤销组权限get
setfacl
-b 移除文件上全部acl
-k 删除默认设定
-d 默认访问列表 (只能设置在目录上,目录下的文件能够自动继承)
setfacl -m d:u:(用户):r-- (目录)
-m 设定有效权限位 setfacl -m m::r-- (文件)it
文件权限管理扩展: S权限 t权限
SUID:Set UID 设置使文件在执行阶段具备文件全部者的权限,典型的文件是/etc/passwd.
若是通常用户执行该文件,则在执行过程当中,该文件能够得到root权限,从而能够更改用io
户密码。
chmod u+s /root a.txt(为a.txt设置s为)
若是a.txt原来没有执行权限,则添加上的s会是小写,若是原来有执行权限,S则会是大写
SGID:Set GID 该权限只对目录有效。目录被设置该位后,任何用户在此目录下建立的文件都
具备和该目录所属的组相同的组。
STICKY:
ll -d /tmp (/tmp的权限是777,就是公共场所,谁均可以新建和删除,加了在othetclass
用户上置t
位以后,就谁均可以建,可是只能删本身的,不能删别人的.加在o位置上表示出了属主test
外的全部
用户都只能建,不能删,注意此处的o跟咱们日常理解的o不一样,日常的o是除了属主和扩展
属组。)
例:chmod o+t /project/
SUID,SGID,STICKY 组合使用
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
若是原来一个目录/tmp/test是755,若是想让他有SUID,SGID位,则chmod 6755List
/tmp/test便可