访问控制列表(Access Control Lists):
当传统文件保护不足时,访问控制列表(简称ACLs)可以提供更好的对文件访问许可的控制。
ACL提供更好的文件安全,授权文件所有者,文件所属组,其他,指定的用户和组允许定义文件许可。ACLs同样授权用户为每一个种类设置默认的许可。
例子:如果系统管理员希望每一个在特定组中的成员可以读一个文件,可以简单的为这个组设置这个文件的读许可。
无论如何,如果系统管理员希望只有一个人可以对这个文件进行写操作呢?ACLs可以提供文件的安全级别,而传统的UNIX文件系统的保护则不能提供这个功能。
ACL信息是保存的并且使每一个文件或者目录联系起来。
ACLs为文件或者目录设置或者查看正在使用的命令和选项的描述。
ACL命令和选项
Command/Option描述
Getfacl filename(s)显示在一个文件中的ACL条目
Setfacl options filename在一个文件上设置,添加,更改和删除ACL条目
Setfacl –m acl_entries 在文件上建立或者改变ACL条目
Setfacl –s acl_entries在文件上删除老的ACL条目并且重新添加一个新的ACL条目
Setfacl –d acl_entries在文件上删除一个或多个ACL条目
Setfacl –f acl_file指定一个ACL设置文件包括在其他文件上设置的许可列表。acl_file仅仅是这个命令的一个变量
Setfacl –r为ACL重新计算许可
ACL条目
每个下面列出的ACL描述区的条目都以冒号分开
ACL Fields描述
Entry-type为所有者,所有者所在的组,指定的用户,附加的组,或者ACL mask设置文件许可的条目的类型。
UID or GID用户名或者识别号码(UID)
组名或者识别号码(GID)
perm为entry-type设置的许可,可以使用r,w,x和-或者使用0-7中的8进制数的许可提示符。
Setfacl命令使用这些ACL条目在文件上设置文件的许可。
例子:
。u[ser]::perm ----------设置所有者的许可。
。g[roup]::perm---------设置所有者所在组的许可。
。o[ther]:perm-----------设置用户许可,除了所有者或者所有者所在组的成员。
。u[ser]:UID:perm-------------为一个特定的用户设置许可。用户名必须是已经存在在
/etc/passwd文件中。(u[ser]:username:perm)
。g[roup]:GID:perm-----------为一个特定的组设置许可。组名必须是已经存在于/etc/group文件中(或者g[roup]:groupname:perm)
。m[ask]:perm--------------------设置ACL mask。Mask条目需要最大的许可允许所有的用户,除了所有者和所有组。Mask是为所有用户和组改变权限的快速的方法。
在一个文件上添加和改变ACL许可
使用setfacl –m命令添加和改变ACL许可在一个或者多个文件的ACL条目。
命令格式:
setfacl –m acl_entry,acl_entry filename1 [filename2 …]
决定如果文件已经有一个ACL
有2条路径决定已经有一个ACL在文件上
。使用getfacl命令
。使用ls –l命令
使用ls –l显示的时候,任何已经有一个ACL的文件都权限模式的末端附加一个“+”
在文件上删除ACL条目
使用setfacl –d命令从文件删除一个ACL条目。要删除ACL条目,要指定UID或者GID。
文件所有者,文件组所有者,其他和ACL mask不能删除ACL条目
命令格式
setfacl –d ACL_entry filename(s)
or
setfacl –d ACL_entry,ACL_entry filename(s)
重新定位文件上的ACL条目
要从命令行重新定位文件上的ACL条目,最少必须指定设置的用户,组,其他和mask许可及文件名
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 笔记 读书 文件 ACL 一个 许可 条目 设置 命令 回复 或者 |
注册
个人空间
