Linux 文件特殊权限和访问控制列表
文件特殊权限
suid: set uid,属主有s权限,意味着用户在执行此程序时,其进程的属主不再是发起者本人,而是这个程序文件的属主.如果属主为root则拥有超级用户管理员权限,将直接威胁系统安全.
sgid: set gid,属组有s权限,意味着执行此程序时,其进程的属组不再是运行者本人所属的基本组,而是此程序文件的属组.
sticky: 粘贴位,附加other的权限上,表现为t 加上此位用户只能删除自己文件.
suid、sgid、sticky亦可用八进制方式
表示如下:
000 即suid、sgid、sticky均为空
001 即sticky为t,表示1
010 即sgid,表示2
011 即sgid+sticky,表示3
100 即suid,表示4
101 即suid+sticky,表示5
110 即suid+sgid,表示6
111 即suid+sgid+sticky,表示7
示例:
suid
用法: chmod u+|-s /path/to/somefile
s:表示属主原有执行权限
S:表示属主无执行权限
示例:
sgid
用法: chmod g+|-s /path/to/somefile
示例:
sticky
用法: chmod o+|-t /path/to/somefile
t:表示属主原有执行权限
T:表示属主无执行权限
示例:
文件访问控制列表
file access contrl list(文件访问控制列表)
主要目的是提供传统的owner,group,others的read,write,execute权限之外的具体权限设置,ACL可以针对单一用户、单一文件或目录来进行r,w,x的权限控制,对于需要特殊权限的使用状况有一定帮助。如,某一个文件,不让单一的某个用户访问。
ACL控制命令:
getfacl:查看文件或目录的访问控制列表
setfacl:设置文件或目录的访问控制列表
setfacl 参数
-m:新增或修改ACL中的规则
-x:移出ACL中的规则
-b:删除全部的acl规则
-k:删除默认的acl规则
-R:递归设置acl,包括子目录
-d:设置默认acl
用法:
setfacl options /path/to/somefile
示例:
setfacl亦可禁止某用户访问指定文件
示例:
facl默认不支持额外挂载文件系统,额外系统挂载时需添加acl选项。
示例:
本文出自 “Why no !” 博客,请务必保留此出处http://dovemy.blog.51cto.com/8487472/1622718
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。