SUID,SGID,SBIT的实际使用案例,详解

来源:本站原创 Linux 超过331 views围观 0条评论

4 为 SUID = u+s
2 为 SGID = g+s
1 为 SBIT = o+t 

为Set UID,简称为SUID。那么这个特殊权限的特殊性的作用是什么呢?
1、SUID权限仅对二进制程序(binary program)有效;
2、执行者对于该程序需要具有x的可执行权限;———–
3、本权限仅在执行该程序的过程中有效(run-time);
4、执行者将具有该程序拥有者(owner)的权限。
SUID的目的就是:让本来没有相应权限的用户运行这个程序时,可以访问他没有权限访问的资源。passwd就是一个很鲜明的例子,下面我们就来了解一下这相passwd执行的过程。

[root@desktop01 tmp]# ll |grep suid
-rwsr-xr-x. 1 root    root      41 Sep 26 11:40 suidtest.sh
-rw-r–r–. 1 root    root      29 Sep 26 11:32 suidtest1.txt

Set GID

我们前面讲过,当s这个标志出现在文件所有者的x权限上时,则就被称为Set UID。那么把这个s放到文件的所属用户组x位置上的话,就是SGID。如开头的/usr/bin/wall命令。
那么SGID的功能是什么呢?和SUID一样,只是SGID是获得该程序所属用户组的权限。
这相SGID有几点需要我们注意:
1、SGID对二进制程序有用;
2、程序执行者对于该程序来说,需具备x的权限;————–
3、SGID主要用在目录上;
理解了SUID,我想SGID也很容易理解。如果用户在此目录下具有w权限的话,若使用者在此目录下建立新文件,则新文件的群组与此目录的群组相同。

cd /
mkdir sgiddir
chmod 2757 sgiddir/

[root@desktop01 /]# ls -ld sgiddir/
drwxr-srwx. 3 root root 51 Sep 26 11:54 sgiddir/

cd sgiddir/
ll
mkdir 1
touch 2
vim 3.sh
chmod 557 3.sh
[csace@desktop01 sgiddir]$ ./3.sh 
[csace@desktop01 sgiddir]$ ll
total 12
drwxrws—. 2 csace root  6 Sep 26 11:52 1
-rw-rw—-. 1 csace root 29 Sep 26 11:54 11:54:09.sh
-rw-rw—-. 1 csace root 29 Sep 26 11:57 11:57:10.sh
-rw-rw—-. 1 csace root  0 Sep 26 11:52 2
-r-xr-xrwx. 1 csace root 34 Sep 26 11:53 3.sh
[csace@desktop01 sgiddir]$

sbit

SBIT 全称Sticky Bit.但是它只对目录有效,对文件却是无效的,它的作用就是防止别人删除对方的资料…我们举例来说明…

属主帐户
[root@desktop01 /]# mkdir sbittest
[root@desktop01 /]# ll   
total 44
drwxr-xr-x.   2 root root    6 Sep 26 12:10 sbittest

[root@desktop01 /]# chmod o+w sbittest/

[root@desktop01 /]# ll
total 44

drwxr-xrwx.   2 root root    6 Sep 26 12:10 sbittest

[root@desktop01 /]# cd sbittest/
[root@desktop01 sbittest]# mkdir 1
[root@desktop01 sbittest]# cd ..
[root@desktop01 /]# ll    
drwxr-xrwx.   4 root root   25 Sep 26 12:11 sbittest
[root@desktop01 /]# chmod 1757 sbittest/
drwxr-xrwt.   4 root root   25 Sep 26 12:11 sbittest
[root@desktop01 /]# cd sbittest/
[root@desktop01 sbittest]# mkdir 3
[root@desktop01 sbittest]# ll
drwxr-xr-x. 2 root  root  6 Sep 26 12:10 1to3
drwxrwx—. 2 csace csace 6 Sep 26 12:11 2
drwxr-xr-x. 2 root  root  6 Sep 26 12:12 3
OTEHER帐户
未加sbit—————-
[csace@desktop01 /]$ cd sbittest/
[csace@desktop01 sbittest]$ mv 1 1to3   —-可以修改他人文件
[csace@desktop01 sbittest]$ ll
total 0
drwxr-xr-x. 2 root  root  6 Sep 26 12:10 1to3
drwxrwx—. 2 csace csace 6 Sep 26 12:11 2

[csace@desktop01 /]$ ll -ld sbittest/
drwxr-xrwt. 5 root root 33 Sep 26 12:12 sbittest/   加了sbit
[csace@desktop01 sbittest]$ ll
total 0
drwxr-xr-x. 2 root  root  6 Sep 26 12:10 1to3
drwxrwx—. 2 csace csace 6 Sep 26 12:11 2
drwxr-xr-x. 2 root  root  6 Sep 26 12:12 3
[csace@desktop01 sbittest]$ mv 3 3to4
mv: cannot move ‘3’ to ‘3to4’: Operation not permitted  —修改被拒绝
[csace@desktop01 sbittest]$ ll
total 0
drwxr-xr-x. 2 root  root  6 Sep 26 12:10 1to3
drwxrwx—. 2 csace csace 6 Sep 26 12:11 2
drwxr-xr-x. 2 root  root  6 Sep 26 12:12 3

文章出自:CCIE那点事 http://www.jdccie.com/ 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。 禁止全文转载。
本文链接:http://www.jdccie.com/?p=3537转载请注明转自CCIE那点事
如果喜欢:点此订阅本站
  • 相关文章
  • 为您推荐
  • 各种观点

暂时还木有人评论,坐等沙发!
发表评论

您必须 [ 登录 ] 才能发表留言!