文件的特殊权限set_uid set_gid stick_bit
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件的特殊权限set_uid set_gid stick_bit相关的知识,希望对你有一定的参考价值。
1.set_uid权限
系统中有一个地方用到了suid,/usr/bin/passwd 。
[[email protected] ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd
set UID 对文件来说有这样的限制和功能
1.仅对二进制程序有效
2.执行者对该程序具有x权限
3.本权限仅在执行程序的过程中有效
4.执行者具有该程序所有者的权限。
5.仅对文件有效,对目录无效
实例:
给ls命令增加 suid 权限。临时拥有root的权限。
chmod u+s /usr/bin/ls
su - user1
ls /root/
2.set_gid权限
set GID 对文件来说有这样的限制和功能
1.仅对二进制文件有效
2.执行者对于该程序来说具有x权限
3.执行者在执行过程中将会获得该程序用户组的支持
set GID 对目录来说 有这样的限制和功能
1.用户对该目录具有r和x权限,才能进入该目录
2.用户在此目录下的有效用户组,将会变成该目录的用户组
3.用户拥有w权限的时候,用户所创建的新文件的用户组于目录的用户组相同
如果两个用户同时共享一个目录,
1.首先把用户ab加入到同一用户组下,
2.创建目录,设定2770权限,必须设定SGID权限,否则用户a创建的文件,用户b以其他人的身份只具备r权限
实例:
没有设置SGID的情况下,所有者和所属组都是user1
# mkdir /tmp/111 && chmod 777 /tmp/111
# su - user1
$ cd /tmp/111/
$ mkdir dir1 && touch file1
$ ll
设置SGID之后,创建的文件和目录,所属组就会临时拥有root的权限。
3.stick_bit权限
防删除位。/tmp目录被设置了这个权限。
sticg_bit 对目录来说 有这样的限制和功能
1.仅对目录有效,对文件无效
2.当用户对此目录具有wx权限,即具有写入的权限
3.当用户在该目录下创建文件或目录时,仅自己与root才有权利删除该文件。
实例:
没有设置SBIT的权限下,普通用户可以删除权限为777的文件。
设置完SBIT之后,普通用户无法删除。
4.特殊权限与umask
umask的最前面一位,是特殊权限位。
4为SUID
2为SGID
1为SBIT
实例:
设置一个文件,权限为SUID 和 755权限。
# chmod 4755 1.txt
以上是关于文件的特殊权限set_uid set_gid stick_bit的主要内容,如果未能解决你的问题,请参考以下文章
特殊权限set_uid, 特殊权限set_gid,特殊权限stick_bit,软链接文件, 硬连接文件
2.18 特殊权限set_uid 2.19 特殊权限set_gid 2.20 特殊权限stick_b
文件的特殊权限set_uid set_gid stick_bit