5.2权限管理-文件特殊权限——linux
一、SetUID
- SetUID的功能
*只有可执行的二进制程序才能设定SUID权限
*命令执行者要对该程序拥有x(执行)权限
*命令执行者在执行改程序时获得该程序文件属主的身份(在执行程序的过程中灵魂附体为文件的属主)
*SetUID权限只在改程序执行过程中有效,也就是说身份改变只在程序执行过程中有效
- passwd命令拥有SetUID权限,所以普通可以修改自己的密码
[rootlocalhost ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 26456 2月 22 2020 /usr/bin/passwd
*cat命令没有SetUID权限看,所以普通用户不能产看/etc/shadow文件内容
-rwxr-xr-x 1 root root 4756 6月 22 2020 /bin/cat
- 设定SetUID的方法
“4“代表SUID
[rootlocalhost ~]# chmod 4755 第一个7代表所有者的权限,第二个5代表所属组的 ,第三个5代表其他人的权限
[rootlocalhost ~]# chmod u+s 文件名 - 取消SetUID的方法
[rootlocalhost ~]# Chmod 755 文件名
[rootlocalhost ~]# Chmod u-s 文件名 - 危险的SetUID
关键目录应严格控制写(w)权限。比如 “/” ,“usr” 等
二、SetGID
1.SetGID针对文件的作用
*只有可执行的二进制程序才能设置SGID权限
*命令执行者要对该程序拥有x(执行)权限
*命令执行在执行程序的时候,组身份升级为改程序文件的属组
*SetGID权限同样只在改程序执行中生效,也就是说身份改变只在程序执行过程中生效
[rootlocalhost ~]# ll /]usr/bin/locate
-rwx—s—x 1 root slocate 3754 8月 24 2020 /usr/bin/locate
[rootlocalhost ~]# ll /var/bin/mlocate/mlacate.db
-rw-r----- 1 root slocate 1865666 1月 20 04:28 / var/bin/mlocate/mlacate.db
*/usr/bin/locat是可执行二进制程序,可以赋予SGID
*执行用户lamp对/usr/bin/locate命令拥有执行权限
*执行/usr/bin/locate命令时,组身份会升级为slocate库拥有r权限,所以普通用户可以使用locate命令查询mlocate.db数据库
*命令结束,lamp用户的组身份返回为lamp组
2.SeyGID针对目录的作用
*普通用户必须对此用户拥有r和x权限,才能进入此目录
*普通用户在此目录中的有效组会变成组目录的属组
*若普通用户对此用户具有w权限时,新建的文件的默认属组是这个目录的属SetGIX
3.设定SetGID
- “2“代表SGID
[rootlocalhost ~]# chmod 2755 文件名
[rootlocalhost ~]# chmod g+s 文件名
4.取消SetGID
[rootlocalhost ~]# chmod 755 文件名
[rootlocalhost ~]# chmod g-s 文件名
三、Sticky BIT
1.SBIT黏着位的作用
*黏着位目前只对目录有效
*普通用户对该用户拥有w和x权限,即普通用户可以在此目录拥有写入权限
*如果没有黏着位,因为普通用户拥有w权限,所以可以删除此目录下所有文件,包括其他用户建立的文件。一旦赋予了黏着位,除了root可以删除所有文件,普通用户就算有w权限,也只能删除自己建立的文件,不能删除其他用户建立的文件
最常见的黏着位目录:/tmp
[rootlocalhost ~]# ll -d /tmp
drwxrwxt 3 root root 4512 12月25 11:25 /tmp/
2.设置与取消黏着位
1.设置
“1“代表SBIT
[rootlocalhost ~]# chmod 1755 目录名
[rootlocalhost ~]# chmod o+t 目录名 (o代表other)
2.取消
[rootlocalhost ~]# chmod 755 目录名
[rootlocalhost ~]# chmod o-t 目录名
- Linux中文件系统的权限管理(普通权限,特殊权限,文件的扩展属性,FACL)
- Linux权限管理:普通文件权限、特殊权限及ACL 推荐
- Linux——文件的权限管理、acl列表、特殊权限位、练习2
- Linux 之权限管理-文件特殊权限SetUID、SetGID和Sticky BIT
- linux基础(10)--文件普通权限与特殊权限管理--RHEL6.5
- 【Linux】文件的权限管理及特殊属性-粘滞位(sticky bit)概述
- Linux中文件系统的权限管理(普通权限,特殊权限,文件的扩展属性,FACL)
- Linux权限管理ACL权限,文件特殊权限,chattr权限,sudo权限
- Linux中权限管理之文件特殊权限
- Linux下权限管理-文件特殊权限setUID/sticky BIT
- Linux 第六周学习笔记 (2),特殊权限列表,at延时任务及定时机制,系统临时文件的管理
- Linux系统中的文件权限管理(2)---特殊权限(sticky 粘制位、sgid 强制位、suid 冒险位)
- 190430 linux文件特殊权限管理(SUID/SGID/SBIT)
- Linux系统中的文件权限管理(2)---特殊权限(sticky 粘制位、sgid 强制位、suid 冒险位)
- Linux学习日记 —— 8.2.1 权限管理-文件特殊权限-SetUID
- Linux 文件权限管理 之 特殊权限
- linux操作学习06文件权限:文件属性查看(ls),文件所有人、组的管理(chown、chgrp),文件普通权限(chmod)、系统默认权限的设定(umask)、文件特殊权限
- Linux学习日记 —— 8.2.3 权限管理-文件特殊权限-Sticky BIT
- Linux的特殊文件权限
- Linux中的文件特殊权限