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

相关推荐
Cynthia的梦7 分钟前
Linux学习-Linux进程间通信(IPC)聊天程序实践指南
linux·运维·学习
卡戎-caryon13 分钟前
【Linux网络与网络编程】03.UDP Socket编程
linux·服务器·网络·笔记·单例模式·udp·网络通信
張萠飛29 分钟前
Linux的TCP连接数到达2万,其中tcp_tw、tcp_alloc、tcp_inuse都很高,可能出现什么问题
linux·网络·tcp/ip
孙同学_1 小时前
【Linux篇】自主Shell命令行解释器
android·linux
莲动渔舟1 小时前
Nyquist插件基础:LISP语法-自定义函数
服务器·开发语言·lisp·音频处理·audacity
敲上瘾1 小时前
高并发内存池(二):Central Cache的实现
linux·服务器·c++·缓存·哈希算法
一只努力学习的Cat.1 小时前
Linux:环境变量
linux
安顾里2 小时前
Linux命令-tar
linux·运维·服务器
沐土Arvin2 小时前
Nginx 核心配置详解与性能优化最佳实践
运维·开发语言·前端·nginx·性能优化
不爱敲代码的阿玲2 小时前
西门子s7协议
服务器·网络·tcp/ip