Linux--ACL权限管理

一.ACL权限管理简介

ACL(Access Control List,访问控制列表)是一种文件权限管理机制,它提供了比传统的UGO(用户、组、其他)权限更灵活的权限设置方式。以下是ACL的一些主要功能:

  1. 针对特定用户或用户组设置权限:ACL允许管理员为特定的用户或用户组设置访问某个文件或目录的权限,而不影响其他用户的权限。
  2. 子文件/目录继承父目录的权限:在ACL中,可以设置子文件和子目录继承父目录的权限,这样可以简化权限管理的工作。
  3. 解决传统权限分配的限制:在传统的Linux文件权限中,一个文件只有所有者、所属组和其他用户的权限设置,这在某些复杂的权限需求面前显得不够用。ACL通过提供更多的权限设置选项,解决了这一问题。
  4. 检查和支持ACL :要使用ACL,需要确保Linux内核和文件系统支持。大多数现代Linux发行版默认都支持ACL,但可以通过命令如dumpe2fs来检查文件系统的ACL支持状态。
  5. 挂载时启用ACL :如果某些分区没有启用ACL,可以通过mount命令重新挂载分区并加入acl选项来启用ACL权限。
  6. 操作系统的支持:不同的操作系统对ACL的支持程度可能不同。例如,CentOS 6.x系统中ACL权限默认是开启的,而在其他系统中可能需要手动开启或检查ACL权限的状态。

二.操作步骤

  1. 添加测试目录,用户,组,并将用户添加到组(创建zs,ls添加到tgroup组中)

输入mkdir /project然后ll查看即可

查看组是否正常建立 (输入cat/ect/group)进行查看

修改目录的所有者和所属组

设定权限

此时需要为临时用户进行分配权限, r-x 添加临时用户

为临时用户分配特定权限

查看目录权限,注意+,表示文件或目录有acl权限

验证acl权限

切换到tempuser用户

验证可以进入project目录

验证不能在project中创建文件

控制组的ACL权限

groupadd temp

创建一个temp组

setfacl -m g:temp:rx /project

设置组的ACL

getfacl /project

查看设置后ACL

创建一个用户,并将该用户设置为temp组

useradd tempu02

passwd tempu02

将用户添加到temp组中

gpasswd -a tempu02 temp

验证

su tempu02

可以进入目录

cd /project

不能创建文件

touch aa.txt

相关推荐
7***n7521 分钟前
API网关设计模式
linux·服务器·设计模式
哈里谢顿1 小时前
环境变量 HTTP_PROXY/HTTPS_PROXY 深度解析:为什么 cURL 行,Docker 不行?
linux
馨谙1 小时前
使用 systemd 用户服务管理容器:从概念到实践
linux·容器
人工智能训练2 小时前
Windows中如何将Docker安装在E盘并将Docker的镜像和容器存储在E盘的安装目录下
linux·运维·前端·人工智能·windows·docker·容器
知难行难2 小时前
macOS配置Apocrita及ssh访问及获取GPU权限
运维·macos·ssh
zzzsde2 小时前
【Linux】基础开发工具(1):软件包管理器&&vim编辑器
linux·运维·服务器
tan180°2 小时前
Linux网络TCP(上)(11)
linux·网络·c++·后端·tcp/ip
断水客2 小时前
如何在手机上搭建Linux学习环境
linux·运维·学习
会飞的土拨鼠呀2 小时前
ubuntu24安装snmp服务
linux·运维
胖好白2 小时前
【RK3588开发】模型部署全流程
linux·人工智能