您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

CentOS下ACL权限控制详解

添加时间:2019-11-8 21:41:24  添加: 思海网络 
ACL权限控制

设置ACL权限:setfacl

查看ACL权限:getfacl

ACL权限控制主要目的是提供传统的owner,group,other的read,wirte,execute权限之外的具体权限设置,可以针对单一用户或组来设置特定的权限

比如:某一目录权限为

drwx------ 2 root root 4096 03-10 13:51./acldir

用户user对此目录无任何权限因此无法进入此目录,ACL可单独为用户user设置这个目录的权限,使其可以操作这个目录

ACL启动

要使用ACL必须要有文件系统支持才行,目前绝大多数的文件系统都会支持,EXT3文件系统默认启动ACL的

查看文件系统是否支持ACL

[root@localhost tmp]#

dumpe2fs -h /dev/sda2 dumpe2fs 1.39 (29-May-2006)

……

sparse_super large_file

Default mount options: user_xattr acl

加载ACL功能

如果UNIX LIKE支持ACL但是文件系统并不是默认加载此功能,可自己进行添加

[root@localhost tmp]# mount -o remount,acl /

[root@localhost tmp]# mount

/dev/sda2 on / type ext3 (rw,acl)

同样也可以修改磁盘挂在配置文件设置默认开机加载

[root@localhost tmp]# vi /etc/fstab

LABEL=/ / ext3 defaults,acl 1 1

查看ACL权限

语法:getfacl filename

设置ACL权限

语法:setfacl [-bkRd]  [-m|-x acl 参数]  目标文件名

选项与参数:

-m:设置后续的acl参数,不可与-x一起使用

-x: 删除后续的acl参数,不可与-m一起使用

-b:删除所有的acl参数

-k:删除默认的acl参数

-R:递归设置acl参数

-d:设置默认acl参数,只对目录有效

针对特殊用户

设置格式:u:用户账号列表:权限

权限:rwx的组合形式

如用户列表为空,代表设置当前文件所有者权限

举例:

[root@localhost tmp]# mkdir -m 700 ./acldir; ll -d ./acldir

drwx------ 2 root root 4096 03-10 13:51 ./acldir

[root@localhost tmp]# su tkf

[tkf@localhost tmp]$ cd ./acldir/

bash: cd: ./acldir/: 权限不够 =>用户无X权限

[tkf@localhost tmp]$ exit

exit

[root@localhost tmp]# setfacl -m u:tkf:x ./acldir/

=>针对用户tkf设置acldir目录的权限为x

[root@localhost tmp]# ll -d ./acldir/

drwx--x---+ 2 root root 4096 03-10 13:51 ./acldir/

=>通过ACL添加权限在权限末尾会增加多个一个“+”同时文件原本权限也发生变化。

=>可通过getfacl查看原始目录权限

[root@localhost tmp]# getfacl ./acldir/

# file: acldir

# owner: root

# group: root

user::rwx

user:tkf:--x =>记录tkf用户针对此目录有acl权限

group::---

mask::--x

other::---

=>这里需要特殊说明,只是tkf这个用户具有X权限,其他用户还是无权限的

[root@localhost tmp]# su tkf

[tkf@localhost tmp]$ cd ./acldir/

[tkf@localhost acldir]$

=>用户tkf可以具有x权限可以进入目录

针对特定用户组

设置格式:g:用户组列表:权限

权限:rwx的组合形式

如用户组列表为空,代表设置当前文件所属用户组权限

举例:

[root@localhost tmp]# setfa

setfacl setfattr

[root@localhost tmp]# setfacl -m g:users:rx ./acldir/

[root@localhost tmp]# getfacl ./acldir/

# file: acldir

# owner: root

# group: root

user::rwx

user:tkf:--x

group::--- => 其他用户组(非acl设置)的权限

group:users:r-x => 记录users用户组针对此目录有acl权限

mask::r-x

other::---

针对有效权限设置

有效权限(mask)就是acl权限设置的极限值,也就是你所设置的acl权限一定是mask的一个子集,如果超出mask范围会将超出的权限去掉

设置格式:m:权限

权限:rwx的组合形式

举例:

[root@localhost tmp]# setfacl -m m:x ./acldir/

[root@localhost tmp]# getfacl ./acldir/

# file: acldir

# owner: root

# group: root

user::rwx

user:tkf:--x

group::r-x #effective:--x

group:users:r-x #effective:--x

mask::--x

other::---

针对默认权限设置

我们前面都是针对一个目录为一个用户(组)设置特定权限,但是如果这个目录下在新创建的文件是不具有这些针对这个用户的特定权限的。为了解决这个问题,就需要设置默认acl权限,使这个目录下新创建的文件有和目录相同的ACL特定权限

设置格式:d:[u|g]:用户(组)列表:权限

举例

[root@localhost tmp]# mkdir -m 711 ./defdir

[root@localhost tmp]# setfacl -m u:tkf:rxw ./defdir

[root@localhost tmp]# ll -d ./defdir/

drwxrwx--x+ 2 root root 4096 03-10 15:23 ./defdir/

=>目录权限具有acl特定权限(后面+)

[root@localhost tmp]# touch ./defdir/a.file;ll ./defdir/

-rw-r--r-- 1 root root 0 03-10 15:25 a.file

=>新创建的文件不具有acl特定权限(后面无+)

[root@localhost tmp]# setfacl -m d:u:tkf:rxw ./defdir

=>设置默认权限

[root@localhost tmp]

# getfacl ./defdir/

# file: defdir

# owner: root

# group: root

user::rwx

user:tkf:rwx

group::--x

mask::rwx

other::--x

default:user::rwx

default:user:tkf:rwx

default:group::--x

default:mask::rwx

default:other::--x

[root@localhost tmp]# touch ./defdir/b.file;ll ./defdir/

-rw-r--r-- 1 root root 0 03-10 15:25 a.file

-rw-rw----+ 1 root root 0 03-10 15:26 b.file

=>新创建文件默认带有acl特定权限

[root@localhost tmp]

# getfacl ./defdir/b.file

# file: defdir/b.file

# owner: root

# group: root

user::rw- user:tkf:rwx #effective:rw-

group::--x #effective:---

mask::rw-

other::---


关键字:CentOS、ACL、权限、控制
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2019 All Rights Reserved.
联系电话:(0757)22630313、22633833
公司地址: 广东省佛山市顺德区大良国际商业城A区4座3楼106号   邮编:528300
机房7x24小时服务热线:(0757)23628508、23628509
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站