当前位置 : 主页 > 网络编程 > PHP >

linux 特殊权限位说明

来源:互联网 收集:自由互联 发布时间:2023-10-08
linux 系统基本权限位为9位权限位,但还有额外3位权限位,共12位权限: suid:s(有x) S 4 用户对应的权限位 (用户对应的权限位) sgid :s(有x) S 2 用户对应的权限位 (用户组对应的


linux  系统基本权限位为9位权限位,但还有额外3位权限位,共12位权限:

 

     suid:s(有x)  S    4  用户对应的权限位 (用户对应的权限位)

     sgid :s(有x)  S   2  用户对应的权限位     (用户组对应的权限位)

     sticky :t(有x)  T  1  用户对应的权限位       (其他对应的权限位)

 

     chmod   4755 /bin/rm   设置rm命令权限为4755,就是把setuid设置好了

 

 

suid知识小结,是针对命令和二进制的

 

 

   1)用户和属组对应的前三位权限x位上如果有s就表示suid的权限。

        当x位上没有小写x执行权限的时候,suid的权限显示的就是大S。

   2) suid作用是让普通用户可以以root(或其他用户角色运行root)(或其他) 账号才能运行的程序和命令,或程序命令对应本来没有权限操作的文件等

   【suid和su与sudo的区别】 suid为某一个命令设置特殊权限(使用者为所有人)

 

举例:

     当普通用户修改密码的时候,实际是修改/etc/shadow文件,但/etc/shadow文件权限示意图如下:

linux 特殊权限位说明_linux

  但当我们普通用户执行passwd命令修改密码的时候,却是可以修改成功的,

linux 特殊权限位说明_用户组_02

 修改成功的原因就是passwd 具有超级用户权限,即使用户没有修改文件的权限,但可以借助该命令对文件进行修改。

即操作该命令的用户拥有该命令所属用户的权限

 passwd 命令权限示意图如下

linux 特殊权限位说明_用户组_03

 

 

sgid 知识介绍

         1 与suid不同的是,sgid即可以针对文件也可以针对目录设置!

         2  sgid是针对用户组权限位的。

   
   对于文件来说,sgid的功能如下:

            1) sgid 仅对二进制命令有效,

            2) 二进制命令或程序需要可执行权限x

            3) 执行命令的任意用户可以获得该命令程序执行期间所属组的权限。

    对于目录来说

          1) linux 里面默认所有用户创建文件,默认用户和组都是自身

          2)sgid可以让用户在此目录创建文件和目录,具有和此目录相同的用户组设置。

  

  三 t 粘滞位  

          授权方法: eg  chmod  1777 /tmp   chmod o+t  、tmp

         如果对应位有x则 字符权限表现为小写,否则表现为大写。

 

网友评论