Linux-特殊权限设置(SUID、SGID、SBIT)
一、SUID权限
1.概念
当s这个标志出现在文件所有者的x权限上时,例如文件权限状态“-rwsr-xr-x”,此时就被称为Set UID,简称SUID。
如果该属主权限位上有执行权限,则会显示(小写)s。
如果该属主权限位上没有执行权限,则会显示(大写)S。
说明:SUID权限中的s有大小写之分,如果强行给普通文件添加s权限,那么现实的是大写的S,因为普通文件没有x权限,这样显示的suid其实没什么用,因为它并不是可执行文件。
只有给文件添加了x权限后,suid才有效。
2.作用
(1) SUID权限仅对可执行文件有效;
(2) 执行者对于该可执行文件需要具有x权限;
(3) 在执行过程中,调用者会暂时获得该文件的拥有者权限;
(4) 该权限只在程序执行的过程中有效;
例如/bin/su和/usr/bin/passwd这2个命令的所有者的x权限上都用s权限替换了。

实际上这2个可执行文件的所有者是root,但是我们依然可以在普通账号下使用这两个命令,这是因为普通账号在使用这2个命令的时候会暂时获得其拥有者的权限。
3.授权方式
chmod u+s filename
chmod 4xxx filename
4.总结
(1) 让普通用户对可执行的二进制文件,临时拥有二进制文件的属主权限
(2) 如果设置的二进制文件没有执行权限,那么SUID的权限就显示为S(大写)
(3) 特殊权限suid仅对二进制可执行程序有效,其它文件或目录无效。
注意: suid不安全,如果使用了普通用户可以使用属主用户的权限,那么普通用户在执行对应命令文件时,就可以任意查看或修改文件内容,比如修改了etc/sudoers 文件,那普通用户相当于超级用户的复制品。
二、SGID权限
1.概念
当s出现在文件的所属组x权限位置上时,表示所属组有SGID的权限。
如果该属组权限位上有执行权限,则会显示(小写)s。
如果该属组权限位上没有执行权限,则会显示(大写)S。
说明:同样SGID的s权限也是分大小写的,当g权限组没有x权限的时候,设置SGID后就会变成大写的S,这点跟SUID一样。
2.作用
(1) 既可以作用于目录,也可以作用于可执行文件;
(2) 只要父目录有SGID权限,所有的子目录都会递归继承;
(3) 执行者对于该可执行文件需要具有x权限 ;
(4) 在执行过程中,调用者会暂时获得该文件的所属组权限。
3.授权方式
chmod g+s filename
chmod 2xxx filename
4.总结
(1) 针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。
(2) 当某个目录设置了Sgid后,在该目录中新建的文件不在是创建该文件的默认所属组。
(3) 使用Sgid可以使得多个用户之间共享一个目录的所有文件变得简单。
三、SBIT权限
1.概念
当t出现在其他组的x权限位置时,表示其他组具有SBIT的权限。
如果该其它用户权限位上有执行权限,则会显示(小写)t。
如果该其它用户权限位上没有执行权限,则会显示(大写)T。
2.作用
SBIT(Sticky Bit)目前只针对目录有效。
作用:当用户在该目录下建立文件或目录时,仅有自己与 root才有权力删除。
最具有代表的就是/tmp目录,任何人都可以在/tmp内增加、修改文件(因为权限全是rwx),但仅有该文件/目录建立者与 root能够删除自己的目录或文件。
3.授权方式
chmod o+t filename
chmod 1xxx filename
4.总结
(1) 让多个用户都具有写权限,并让每个用户都只能删除自己的文件
(2) 投入数sticky目录表现在others 的 x 位,用(小写)t 表示,没有执行权限时(大写)T
(3) 一个目录即使使得它的权限为“777” ,如果设置了粘滞位,除了目录的属主和“root”用户有权限删除,其它用户都不允许删除。
四、SUID/SGID/SBIT权限设置
和rwx权限一样通过chmod命令设置,s、t也有两种设置方法:
1、符号表示:
SUID: u+s
SGID: g+s
SBIT: o+t
2、数字表示:
SUID=4
SGID=2
SBIT=1
将原来的三位数扩展为四位数即可,把它们放在权限数字的最开头。例如设置SUID,可以写成4777,设置SGID可以写成,2777,设置SBIT可以写成1777;如果同时设置就是数字之和,例如suid,sgid和sbit都设置的话就是7777。
Linux-特殊权限设置(SUID、SGID、SBIT)的更多相关文章
- 文件的特殊权限(SUID,SGID,SBIT)
文件的一般权限:r w x 对应 421 文件的特殊权限:SUID SGID SBIT对应 421 文件的隐藏权限:chattr设置隐藏权限,lsattr查看文件的隐藏权限. 文件访问控制列表: ...
- Linux之特殊权限(SUID/SGID/SBIT)
特殊权限的介绍 Set UID 当s这个标志出现在文件所有者的x权限上时,如/usr/bin/passwd这个文件的权限状态:“-rwsr-xr-x.”,此时就被称为Set UID,简称为SUID.那 ...
- linux文件权限位SUID,SGID,sticky的设置理解
SUID含义:文件的该位被设置为1,在该文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来 执行这个文件,他都有文件所有者的特权,如果所有者是root的话,那么执行人就有超 ...
- Linux特殊权限:SUID、SGID、SBIT
SUID: 只对二进制程序有效 执行者对于程序需要有x权限 在程序运行过程中,执行者拥有程序拥有者的权限 例如: 普通用户执行passwd命令. ...
- Linux文件与目录的默认权限与隐藏权限 - umask, chattr, lsattr, SUID, SGID, SBIT, file
文件默认权限:umask [root@www ~]# umask 0022 <==与一般权限有关的是后面三个数字! [root@www ~]# umask -S u=rwx,g=rx,o=rx ...
- CentOS 文件特殊权限SUID,SGID,SBIT
1.SUID ,是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有所有者的权限(仅对拥有执行权限的二进制程序有效). (1)SUID权限仅对二进制程序有效: (2)本权限仅在执行该 ...
- centos 特殊权限 各种搜索命令 lsattr ,chattr,suid,sgid,sbit,file,type是否是内置命令,stat文件属性 ,whereis,locate,find,ln 内部命令和外部命令 第五节课
centos 特殊权限 各种搜索命令 lsattr ,chattr,suid,sgid,sbit,file,type是否是内置命令,stat文件属性 ,whereis,locate,find,ln ...
- SUID, SGID, SBIT
基本上SUID有这样的限制与功能: SUID权限仅对二进位程序(binaryprogram)有效,不能用在shellscript上面: 运行者对於该程序需要具有x的可运行权限: 本权限仅在运行该程序的 ...
- suid sgid sbit chattr lsattr
suid 一般用于二进制可执行文件,suid代表当用户执行此二进制文件时,暂时具有此文件所有者的权限 chmod 4xxx binfile sgid 一般用于目录,sgid代表当其他用户在此目录下创建 ...
- suid sgid sbit chattr lsattr find
suid 一般用于二进制可执行文件不可用于shell脚本和目录,suid代表当用户执行此二进制文件时,暂时具有此文件所有者的权限 chmod 4xxx binfile sgid 一般用于目录,sgid ...
随机推荐
- JavaScriptif while for switch流程控制 JS函数 内置对象
1,if else语句 2,if else if else语句 3,switch语句 4,for循环 5,while循环 6,三元运算 7,JS中的函数 8,JS中的匿名函数 9,JS中的立即执行函数 ...
- @JsonIgnore 失效没起作用及 @JSONField(serialize = false)
项目中需要对接口返回的某一个字段进行屏蔽,返回给前端响应的时候,不显示某个字段. 第一时间想到在实体类屏蔽的属性字段上添加@JsonIgnore注解,但添加之后并没有起作用. 在网上搜索了下,使用 @ ...
- java - 冒泡排序求最值
public class Bubble3 { public static void main(String[] args) { int[] arr; arr = new int[]{2,3,6,1}; ...
- 让vs支持wsl调试
WSL安装 wsl --install -d Ubuntu 等一会提示输入用户名,不用管它,直接关闭,下次打开wsl,会以无密码的root用户打开 wsl卸载 wsl --unregister Ubu ...
- 今天是个好日子,TaxCore(POS软件)备案指北
POS软件是什么?你好意思吗,还在用老掉牙的Winform. 关于POS 销售终端--POS(point of sale)是一种多功能终端,把它安装在信用卡的特约商户和受理网点中与计算机联成网络,就能 ...
- [转帖]Linux 页表、大页与透明大页
一. 内存映射与页表 1. 内存映射 我们通常所说的内存容量,指的是物理内存,只有内核才可以直接访问物理内存,进程并不可以. Linux 内核给每个进程都提供了一个独立的虚拟地址空间,并且这个地址空间 ...
- [转帖]一文快速入门 ClickHouse
https://zhuanlan.zhihu.com/p/621480049 什么是clickhouse ClickHouse是一种OLAP类型的列式数据库管理系统,这里有两个概念:OLAP.列式数据 ...
- [转帖]s3fs把 s3-like 对象存储挂载到本地
s3fs把 s3-like 对象存储挂载到本地 s3fs把 s3-like 对象存储挂载到本地 s3fs-fuse 是一个采用 c++ 开发的开源应用,它的作用是可以将 AWS S3 以及兼容 S3 ...
- [转帖]BIS出口管制新规说明会,进一步明确十大问题
https://zhuanlan.zhihu.com/p/573765504 10月13日晚9点,BIS就出口管制新规举行电话会议简报,出口执法助理副部长Thea Kendler主持会议.小白总结要点 ...
- CentOS7 和 CentOS8 安装 rusers-server 然后使用LR 实时监控Linux主机性能的办法
LR 能够通过RPC 的工具 实时获取 被压测机器的 性能表现 但是需要安装几个组件. CentOS6 时期比较简单 可以通过网上 下载rstatd 的tar 包离线安装即可 但是发现CentOS7 ...