{{ cat }}'s docs

5.1.0: 基础命令-特殊权限

1、文件特殊权限命令


权限:SUID
作用:临时赋予用户二进制文档的拥有者的权限(主要用于让普通用户可以使用某些特殊命令)
语法:

  • chmod u+s file(增加s权限)
  • chmod u-s file(减去s权限)

使用限制与环境:

  1. 仅对于二进制文件有效;
  2. 执行者必须对文件拥有x权限(否则即使设置了SUID,由于你对文件根本无法执行SUID此时也无效,此时权限位显示S);
  3. 权限只是在执行过程中拥有属主权限

用法举例:
  passwd命令,路径/usr/bin/passwd,权限为"-rwsr-xr-x"
  passwd命令会修改"/etc/shadow",一般只有root才拥有此命令的操作权限
  可给passwd增加suid权限,这样普通用户就可以使用passwd命令了

SUID只可用于二进制文件,不可用于shell script文件。


权限:SGID

作用于普通文件
作用:
临时赋予用户二进制文档的拥有组的权限(多用于让普通用户可以使用某些特殊命令,和suid类似)
语法

  • chmod g+s file(增加s权限)
  • chmod g-s file(减去s权限)

使用限制与环境:

  • 1、仅对于二进制文件有效;
  • 2、执行者必须对文件拥有x权限(否则根本无法执行文件,更别谈SGID赋予权限,此时权限位显示S);
  • 3、权限只是在执行过程中拥有。

用法举例:
  locate命令,路径/usr/bin/locate,权限为"rwx--s--x"
  locate命令会读取"/var/lib/mlocate/mlocate.db",此命令可用来搜索某些文件所在路径

作用于目录
作用:临时将用户的effective group修改成该目录的的群组
语法:

  • chmod g+s dir(增加s权限)
  • chmod g-s dir(减去s权限)

使用限制与环境:

  1. 使用者必须对该目录拥有x权限(否则无法进入,更别谈SGID赋予权限,此时权限位显示S);
  2. 若用户对此目录拥有w权限,由于effective group被修改成该目录的group,所以用户在此目录下创建任何文件,属组该目录的用户组。

权限:SBIT
作用:限制目录下不同用户之间对于其他用户文档或目录的编辑权限。
语法:

  • chmod o+t dir(增加t权限)
  • chmod o-t dir(减去t权限)

使用限制与环境

  1. 只能针对目录;
  2. 必须有x和w权限(否则无法进入和编辑,更不用谈sbit权限,此时权限位显示T);
  3. 用户自身创建的文档和目录,只有自己和root可以编辑(重命名、复制、删除等)

Contents