Linux附加权限设置(chmod 4755、6755、7755等)
附加权限分为:set位权限(suid、sgid)和粘滞位权限(sticky)
set位权限
set位权限解释
- 一般用于设置可执行程序或者脚本文件
- 目的:没有权限,但用户有权限才能完成任务
- SUID:增加set位权限
- SGID:增加组内用户的set权限
- 功能:当可执行文件设置suid/sgid权限时,任何用户执行改文件时都会获得文件所有者、组账号的对应身份
- 解释:suid/sgid即但进程执行文件时,会获取文件所有者/所属组的uid。(一般来说进程执行文件时,会保留进程所有者的uid)
- 例:passwd命令是少数必须使用suid的命令
- 注意:尽量避免使用,使用不当会破坏系统安全性
set位权限表示
- -rwsr-xr-x:表示设置suid,所有者具有可执行权限
- -rwSr-xr–:表示设置suid,所有者没有可执行权限
- -rwxr-sr-x:表示设置sgid,组用户有可执行权限
- -rw-r-Sr–:表示设置sgid,组用户没有可执行权限
- chmod u/g+s:user/group设置suid/sgid
- chmod us:取消suid设置
- chmod gs:取消sgid设置
粘位权限
- 功能:当目录设置粘位权限时,即使用户对目录有写权限也不能删除目录下其他所有者的权限
- 权限表示:rwx会显示rwt,rw-会显示rwT
- chmod -t 文件列表:取消粘位权限
- chmod +t 文件列表:增加粘位权限
权限的十二位表示
S | G | T | r | w | x | r | w | x | r | w | x |
---|---|---|---|---|---|---|---|---|---|---|---|
11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
- S:suid
- G:sgid
- T:sticky
- 有权限为0,无权限为1。
- (八进制表示)S=4,G=2,T=1
- 例:chmod 4755 file,表示增加suid权限即-rwsr-xr-x。