Set uid, gid,sticky bit的三个权限的详细说明
chmod u+s = chmod 4777
chmod g+s = chmod 2777
chmod o+t = chmod 1777
初始文件0000 权限
添加权限777,常规权限不多讲。
添加UID、GID、SBit权限
chmod 7777 anaconda-ks.cfg
-rwxrwxrwx.
-rwsrwsrwt.
UID chmod u+s
将 “命令” 允许其它用户调用,只针对2进制命令文件有效,对目录无效。
如果s是小写,代表rwx存在x权限,将x用s代替。
如果大写S,代表rw_不存在第三位x权限。后边组权限第三位和other第三位,大小写意思与此相同。
可以看到命令 passwd 具有 -rws
原理,passwd此命令在执行时,具体UID权限,在普通用户执行时,会临时提升至root权限,可以对/etc/passwd文件有写入权限。
可以看到,此文件只有root有权限进行修改。 此为UID功能。
/etc/shadow 此文件为密码以,加密形式保存。里面的内容也只有root能修改,调用passwd命令时,对此文件也会有操作。
去除权限,chmod u-s 文件 。 GID SBIT采用相同方式去权限。
GID chmod g+s
只针对目录有效!
强制修改该目录下,用户创建文件的所属组权限。
正常情况下root创建文件,用户和属组都是root,但目录添加了GID权限后,目录下创建文件,属组强制改为与目录一致。
SBit
保护位,粘贴位
该命令对目录有效!
效果:当目录添加上t,SBIT权限后,目录内的文件,只有属主(root除外)有权限删除,其它用户最多有 rwx,读写执行修改权限,唯独删除不能执行。
charrt +i 文件、目录
锁定!禁止修改文件或目录,包括root。
charrt -i 解除。
lsarrt查看文件 隐藏属性。
setfacl 设置文件扩展属性
setfacl -m u:root:rwx -m添加,u 用户,root 用户名,rwx 添加的权限。
setfacl -m g:组名:权限
setfacl -b 去除扩展权限。
getfacl 查看扩展权限。
-rw-rwxr–+ 原来的. 变成了 +号代表有扩展属性。
隐藏属性只能通过lsattr查看
wheel组,可以控制允许那些用户使用su命令,
可以加策略禁止 非指定用户 su切换用户。