Linux 访问控制列表(access control list)

Posted yooooooo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 访问控制列表(access control list)相关的知识,希望对你有一定的参考价值。

简介

随着应用的发展,传统的linux文件系统权限控制无法适应复杂的控制需求,而ACL的出现,则是为了扩展linux的文件权限控制,以实现更为复杂的权限控制需求。其可以针对任意的用户和用户组进行权限分配(只有root用户和以定义ACL),以及默认权限分配。

类型

  • 针对文件所有者分配
  • 针对文件所属的组群分配
  • 针对额外用户分配
  • 针对额外组群分配
  • 其他用户分配
  • 最大访问权限

查看ACL

getfacl [-option]  [file|dic]
可选参数: -a -d -c -e -E -s -R -t -n
输出示例:
[[email protected] abc]$ getfacl count.sh
# file: count.sh
# owner: root
# group: root
user::rw-
user:tom:rwx
user:aaa:rwx
group::r--
group:temp:rw-
mask::rwx
other::r--

配置ACL

setfacl

选项 参数 含义
-m ACL设置 设置文件的ACL
-M 文件 从文件中读取ACL条目进行配置
-x ACL设置 删除ACL
-X 文件 从文件中读取ACL条目并删除
-b 删除所有扩展ACL
-k 删除所有默认ACL
-R 递归设置子目录及文件
-d 设置默认ACL
-P 跳过符号链接
-L 跟踪符号链接
-n 不重新计算有效权限
–set= ACL设置 覆盖ACL配置
–mask 重新计算有效权限
–resotre= 文件 从文件恢复备份的ACL
–test 测试模式,输出结果
–set-file= 文件 从文件读取ACL条目进行设置

ACL规则表示方式

[d[efault]]:[u[ser]]:用户:[权限] #指定用户ACL
[d]:g:组群:[权限] #指定用户组ACL
[d]:m:[权限] #有效权限掩码(其它权限默认不能超出该权限)
[d]:o:[权限] #其它用户ACL

配置示例:
    root#setfacl -m u:tom:rwx sum.sh #为用户tom指定权限

以上是关于Linux 访问控制列表(access control list)的主要内容,如果未能解决你的问题,请参考以下文章

HTTP响应标头中“允许”和“访问控制允许方法”之间的区别?

思科模拟器创建访问控制列表access-list

acl访问控制列表

在 symfony 访问控制中允许控制器操作

ACM(访问控制模型),Security Identifiers(SID),Security Descriptors(安全描述符),ACL(访问控制列表),Access Tokens(访问令牌(示例代

Linux 命令(175)—— getfacl 命令