Linux下ACL访问控制详解

Linux下ACL访问控制详解。

一、什么是acl访问控制?

访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。

二、acl访问控制权限概述

ACL设置基本权限: r、w、x 设定acl只能是root管理员用户
在这里插入图片描述
r:读权限,代表数字是4
w:写权限,代表数字是2
x:执行权限,代表数字是1

三、相关命令及参数

1.查看权限
getfacl +文件名
2.设定权限
setfacl + 参数 +文件

参数作用
-m设定/修改权限
-k删除默认权限
-b删除所有的权限
-x删除指定用户/群组acl权限
-R对目录下的所有子文件递归设定 ACL 权限
-d设定默认的ACL权限

四、示例

示例用户tester,示例目录:/opt/test

1.设定权限
1)给用户设定权限:

命令格式:setfacl -m u:用户名:权限 目录
#setfacl -m u:tester:r test在这里插入图片描述

2)给用户组设定权限

在这里插入图片描述

2.删除权限
1)删除用户给定的权限

命令格式:setfacl -x u:用户名 目录
#setfacl -x u:tester test
在这里插入图片描述

2)删除组给定的权限

命令格式:setfacl -x g:组名 目录
#setfacl -x g:test test
在这里插入图片描述

3.设定默认权限

此操作只对目录生效,指目录中新建立的文件拥有此默认权限

1)设定默认权限 (设置权限之前文件已存在)

命令格式:setfacl -m d:u:用户名:权限 目录
#setfacl -m d:u:tester:rx test
在这里插入图片描述

2)设定默认权限(设置权限以后创建新目录)

(1)在test目录下创建新的子目录文件:
#mktir ceshi
(2)查看新建目录文件的默认acl权限,文件权限与已设定的默认权限一致
在这里插入图片描述

4.删除默认权限

命令格式:setfacl -k 目录名
#setfacl -k test
此操作只对目录生效,指目录中新建立的文件拥有此默认权限在这里插入图片描述

5.设定递归权限
1)设定用户递归权限

此操作设定的 ACL 权限会对目录下已存在的所有子文件生效

命令格式:setfacl -m u:用户名:权限 -R 目录名
#setfacl -m u:tester:rx -R test
在这里插入图片描述

2)设定所属组递归权限

命令格式:setfacl -m g:组名:权限 -R 目录名
#setfacl -m g:test:rx -R test
在这里插入图片描述

6.删除所有已设定权限

此操作表示删除有关test目录已设定的所有 ACL 权限
命令格式:setfacl -b 目录名
#setfacl -b test
在这里插入图片描述

五、 MASK高级特性

mask属性用于临时降低非匿名用户、非拥有者的acl权限
命令格式:setfacl -m mask::权限 目录名
#setfacl -m mask::rx test
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值