一、基础权限acl
1、acl与ugo的区别
ugo设置基本权限:只能一个用户一个组和其他人。acl文件权限管理:设置不同的用户,不同的基本权限(r、w、x),对象数量不同。
2、语法
命令:setfacl -m u:alice:rw /home/test.txt (设置alice用户对文件具有读写的权限)
解释: 命令 设置 用户或组 :用户名:权限 文件对象
命令:getfacl /home/test.txt (查看文件有哪些acl权限)
命令:setfacl -m g:hr:rw /home/test.txt (设置acl权限,使组hr对test文件有读写的权限)
命令:setfacl -x g:hr /home/test.txt (删除组hr的acl权限)
命令: setfacl -b /home/test.txt (删除所有的acl权限)
二、特殊权限
1、特殊位suid
suid针对文件/程序时临时获得属主的权限 ,普通用户是看不到root用户中的文件的。
命令:chmod u+s 文件/程序所在的目录 (增加suid权限,使普通用户通过suid临时提权查看超管root用户的文件)
使用命令查出ll所在的目录,使用chmod对目录文件增加suid。临时获得属主的权限。
ps:普通用户能够查看超管用户的文件,这个行为很危险,实验后去除suid权限。
命令:chomd u-s 文件/程序所在的目录 (去除suid权限)
2、文件属性chattr
常用于锁定某个用户,拒绝修改。
命令:chattr +i file100 (当在文件上增加这个属性时,我们不能更改、删除、重命名这个文件)
命令:lsattr file100 (查看文件的不同属性)
命令:chattr -i file100 (将属性还原)
3、进程掩码umask
概述:新建文件、目录的默认权限会受到umask的影响,umask表示要减掉的权限。
先查看当前用户的umask权限:
命令:umask
得到的结果为0022
修改umask权限
命令:umask 0000(后面跟的数字根据自己想去除的权限更改)
ps: 默认umask一般情况下是不能更改的,这里只是为了进行实验练习而更改的。
文件是可以直接运行的,所以在会在默认umask的权限下再 默认去除执行权。
目录不会直接运行,直接减去umask权限就是最终目录所能执行的权限。