特殊权限
suid使用:
需求:默认情况下,所有的普通用户,都无法查看/etc/shadow,有没有办法能够让所有的普通用户都能查看/etc/shadow
方式1: chmod 004 /etc/shadow
方式2: 为cat命令赋予一个 suid权限即可
设定suid:u+s 4755 == 4 表示的特殊权限中的suid
[root@oldboy ~]# chmod u+s /usr/bin/cat
[root@oldboy ~]# chmod 4755 /usr/bin/cat
结论:
当为cat命令赋予了特殊权限后,此时所有的普通用户通过cat去查看文件时,其实都是通过cat的属主身份查看的该文件
特殊权限SGID: 组
表现形式: 在文件的 属组权限上有显示一个s(执行权限) S(没有执行权限)
文件:
oldxu用户-->执行-->passwd命令时。
1.由于passwd命令拥有SGID特殊权限 (在命令属组权限位有一个s),
2.那么在整个命令执行的过程中,会以命令的 “属组” 身份去运行该命令。 <-- root组
特殊权限SBIT:
针对的是目录:
目录一旦被赋予了粘滞位,除了 root 可以删除所有文件,普通用户对该目录就算拥有 w 权限,也只能删除自己建立的文件,而不能删除其他用户建立的文件。
[root@oldboy dtest]# ll -d /tmp/
drwxrwxrwt. 9 root root 202 3月 17 10:52 /tmp/
特殊的属性:权限有关
比如说:
1.我希望创建一个文件,不允许被删除。包括root都不行。
2.我希望这个文件只能往里面追加数据。
chatrr 只有 root 用户可以使用,用来修改文件系统的权限属性,建立凌驾于 rwx 基础权限之上的授权。
chattr [+-=] [选项] 文件或目录名
#选项:
+ 增加权限
- 减少权限
= 等于某个权限
# a:让文件或目录仅可追加内容
# i:不得任意更动文件或目录
UMASK表示要减掉的权限
目录: 777 - 022 = 755 最终创建出来的目录权限
文件: 666 - 022 = 644 最终创建出来的文件权限
umask是设置之后创建的文件权限