Linux用户权限ACL权限

简介: ACL权限名叫ACL文件权限管理也是UGO权限的加强版。

  ACL权限名叫ACL文件权限管理也是UGO权限的加强版。


一、ACL和UGO的区别


UGO基本权限:只能一个用户、一个组合、其他人这三个对象进行授权

ACL文件权限管理:设置不同用户,不同的基本权限(r、w、x),对象数量不同


总结:UGO是针对用户、组、其他人三个对象的文件授权,ACL是可以针对指定用户指定组和其他人的文件授权。


二、用法


1、语法


setfacl    -m  u:用户或用户组:权限     文件                //给指定用户或组授权

getfacl     文件                                                                 //查看文件有哪些ACL权限


2、准备文件以及用户


准备一个测试用的文件夹以及用户在文件夹内创建一个文件,这里不做详细解释


mkdir   /test                //创建文件夹

touch   /test/t1                //创建文件t1

useradd   zhangsna        //创建用户zhangsan

useradd   lisi                        //创建用户lisi


3、设置ACL权限


1)首先先查看一下新创好的文件有哪些ACL权限


[root@localhost ~]# getfacl  /test/t1                                        //查看t1的ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1                                                                        //文件的位置

# owner: root                                                                       //文件拥有者

# group: root                                                                          //文件所属组

user::rw-                                                                               //用户的权限

group::r--                                                                               //组的权限

other::rw-                                                                               //其他人的权限

2)设置用户zhangsan、lisi权限


[root@localhost ~]# setfacl -m u:zhangsan:rwx  /test/t1        //给zhangsan授予可以对文件读写执行的权利

[root@localhost ~]# setfacl -m u:lisi:rwx /test/t1        //给lisi授予可以对文件读写执行的权利

[root@localhost ~]# getfacl /test/t1                                        //查看t1的ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1

# owner: root

# group: root

user::rw-

user:zhangsan:rwx                                        //权限增加成功

user:lisi:rwx

group::r--

mask::rwx

other::rw-


小拓展:在设置完ACL权限之后使用ls查看文件内容会有所不一样,查看的时候文件的权限可能会叠加上ACL的权限,但是具体的权限内容还是需要用getfacl来查看因为是在设置ACL权限使用一getfacl命令查看的为主。


[root@localhost ~]# ll /test/t1

-rw-rwxrw-+ 1 root root 0 9月  27 14:46 /test/t1


用ls命令查看后会发发现权限字段上多了一个+号,这个加号代表着有ACL权限,不止有显示的这些权限,具体权限用getfacl命令查看。


3)对组S1进行ACL授权


[root@localhost ~]# setfacl -m g:S1:rw /test/t1              //给S1组授予对文件t1读写权限

[root@localhost ~]# getfacl /test/t1                                //查看t1的ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1

# owner: root

# group: root

user::rw-

user:zhangsan:rwx

user:lisi:rwx

group::r--

group:S1:rw-                                                                          //授权成功

mask::rwx

other::rw-

4)对其他人授权


[root@localhost ~]# setfacl -m o::rwx /test/t1        //给其他人授予对文件t1的读写执行的权限

[root@localhost ~]# getfacl /test/t1                       //查看t1ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1

# owner: root

# group: root

user::rw-

user:zhangsan:rwx

user:lisi:rwx

group::r--

group:S1:rw-

mask::rwx

other::rwx                                                //成功


注意:setfacl -m o::rwx /test/t1  ,o后面有两个冒号是不能少的,其他人是不用用户名的,虽然不用写用户名但仍然要加冒号表示一个站位,不然命令不够这个长度是无法执行的。


5)删除ACL权限

命令setfacl  -x   对象:名称      文件

删除用户的权限


[root@localhost ~]# setfacl   -x u:zhangsan   /test/t1        //删除用户张三对文件的权限

[root@localhost ~]# getfacl /test/t1                                        //查看t1的ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1

# owner: root

# group: root

user::rw-

user:lisi:rwx                                                           //只有lisi的权限在,张三的权限已经移除

group::r--

group:S1:rw-

mask::rwx

other::rwx

删除组的权限


[root@localhost ~]# setfacl -x g:S1  /test/t1                        //删除组S1的权限

[root@localhost ~]# getfacl /test/t1                                        //查看问价t1的ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1

# owner: root

# group: root

user::rw-

user:lisi:rwx

group::r--

mask::rwx

other::rwx


清空所有设置的ACL权限(将文件的ACL权限恢复到默认)


命令:setfacl    -b   文件


[root@localhost ~]# setfacl   -b   /test/t1                        //清空ACL的所有扩展权限

[root@localhost ~]# getfacl  /test/t1                                //查看t1的ACL权限

getfacl: Removing leading '/' from absolute path names

# file: test/t1

# owner: root

# group: root

user::rw-

group::r--

other::rwx

[root@localhost ~]# ll /test/t1                                        //查看t1文件信息

-rw-r--rwx. 1 root root 0 9月  27 14:46 /test/t1             //原本的+号不在了,没有设置ACL权限


ACL权限分享到这,下一篇分享特殊权限。


相关文章
|
1月前
|
Linux Shell
Linux系统文件默认权限
Linux系统文件默认权限
|
4天前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
20 1
linux特殊权限!!
|
27天前
|
Linux 数据安全/隐私保护
Linux中用户权限问题
【10月更文挑战第4天】
13 1
|
1月前
|
运维 监控 安全
Linux_权限理解(详细PLUS)
【10月更文挑战第3天】本文介绍了Linux系统中的权限管理基础,包括文件系统对象与权限关联、权限的继承性、字符与数字表示法的解读,以及用户、组与权限的动态交互。详细解析了`chmod`命令的高级用法和权限修改的风险,探讨了SUID、SGID和Sticky Bit等特殊权限的作用机制,并提出了基于角色的权限分配和定期权限审计的最佳实践。
57 11
|
1月前
|
Linux 应用服务中间件 nginx
Linux下权限设置之suid、sgid、sticky
Linux下权限设置之suid、sgid、sticky
|
1月前
|
Linux 数据安全/隐私保护 Windows
Linux_权限理解(详细PLUS
Linux_权限理解(详细PLUS
|
1月前
|
网络协议 Linux 网络安全
【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
|
1月前
|
Linux Go 数据安全/隐私保护
Linux入门2——初识Linux权限
Linux入门2——初识Linux权限
24 0