1.suid (set uid) 特殊权限
set uid 简称 suid
当我们为某个命令设定了 suid ,无论谁使用该命令 都会使用该命令的 "属主" 运行该命令
# suid == 4000
chmod u+s /usr/bin/passwd
chmod 4755 /usr/bin/passwd
chmod u-s 去掉权限
suid 的作用
1.让普通用户对可执行的二进制文件,临时拥有二进制文件的属主权限。
2.如果设置的二进制文件没有执行权限,那么suid的权限显示就是大S。
3.特殊权限suid仅对二进制可执行程序有效,其他文件或目录则无效。
suid优点: 可以让普通用户执行无法执行的命令 方便
suid缺点: 如果rm 为 suid, 无论谁执行该命令,都能删除系统的任何资源
进程以何种身份去查看一个文件,取决于运行这个进程的用户对这个文件有没有权限
2.sgid (set gid) 特殊权限
将目录设置为sgid后,如果在往该目录下创建文件,都将与该目录的所属组保持一致
# sgid 授权方法: 2000权限字符s(S),取决于属组位置上的x
# chmod 2755 directory
# chmod g+s directory
sgid 作用
1.针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。
2.当某个目录设置了sgid后,在该目录中新建的文件不在是创建该文件的默认所属组
3.使用sgid可以使得多个用户之间共享一个目录的所有文件变得简单。
3. sbit 特殊权限
粘滞位目前只对目录有效
sbit 作用
1.让多个用户都具有写权限的目录,并让每个用户只能删自己的文件。
2.特殊 sbit 目录表现在others的x位,用小t表示,如果没有执行权限是T
3.一个目录即使它的权限为"777"如果是设置了粘滞位,除了目录的属主和"root"用户有权限删除,除此之外其他用户都不允许删除该目录。
# 设定粘滞位 1000
chmod o+t /tmp
chmod 1777 /tmp
粘滞位使用场景
假如一个用户往电脑上C盘上传文件,电脑首先把上传的文件先放在一个临时文档里面,等文件全部上传完成后,在一次性把文件移到C盘
4. 特殊属性 chattr 设置属性 lsattr查看权限限制
chattr 只有 root 用户可以使用,用来修改文件系统的权限属性,凌驾于 rwx 基础权限之上的授权。
chattr 命令格式:[root@bgx ~]# chattr [+-=] [选项] 文件或目录名
#选项: +增加权限 -减少权限 =等于某个权限
a 只能追加,无其他操作
i 锁定文件,不能删除,不能追加,不能移动
5. umask 默认权限
umask 是用来控制默认创建文件或目录的权限
umask 设定为022,表示要减去的权限
目录 777 -022 =755
文件 666 -022 =644
umask 设定为奇数 偶数 对文件和目录的影响
文件: 如果umask出现了奇数, 要在奇数位+1
目录: 对目录毫无影响
设定umask
umask number 临时 (当前bash窗口有效,会随着bash的关闭一起结束)
vim /etc/profile /etc/login.defs # 如果修改则都为永久.