|NO.Z.00039|——————————|LinuxBasicEnd|——|Linux&权限管理.V05|

一、SetGID
### --- SetGID

### --- 针对文件的作用
~~~     SGID 即可以针对文件生效,也可以针对目录生效,这和 SUID 明显不同。
~~~     如果针对文件,SGID 的含义如下:
~~~     只有可执行的二进制程序才能设置 SGID 权限
~~~     命令执行者要对该程序拥有 x(执行)权限
~~~     命令执行在执行程序的时候,组身份升级为该程序文件的属组
 
### --- SetGID 权限同样只在该程序执行过程中有效,也就是说组身份改变只在程序执行过程中有效

[root@localhost ~]# ll /var/lib/mlocate/mlocate.db
-rw-r----- 1 root slocate 1838850 120 04:29 /var/lib/mlocate/mlocate.db
 
~~~     大家发现属主权限是 r、w,属组权限是 r,但是其他人权限是 0:
~~~     当普通用户 user1 执行 locate 命令时,会发生如下事情:
~~~     /usr/bin/locate 是可执行二进制程序,可以赋予 SGID
~~~     执行用户 user1 对/usr/bin/locate 命令拥有执行权限
~~~     执 行 /usr/bin/locate 命 令 时 , 组 身 份 会 升 级 为 slocate 组 , 
~~~     而 slocate 组 对/var/lib/mlocate/mlocate.db 数据库拥有 r 权限,
~~~     所以普通用户可以使用 locate 命令查询mlocate.db 数据库
~~~     命令结束,user1 用户的组身份返回为 user1 组

[root@localhost ~]# ll /usr/bin/locate
-rwx--s--x 1 root slocate 35612 8 月 24 2010 /usr/bin/locate
 
### --- 针对目录的作用

~~~     如果 SGID 针对目录设置,含义如下:
~~~     普通用户必须对此目录拥有 r 和 x 权限,才能进入此目录
~~~     普通用户在此目录中的有效组会变成此目录的属组
~~~     若普通用户对此目录拥有 w 权限时,新建的文件的默认属组是这个目录的属组
~~~     这样写的实在太难看明白了,举个例子:
 
~~~     进入临时目录做此实验。因为临时目录才允许普通用户修改
[root@localhost ~]# cd /tmp/
 
~~~     建立测试目录
[root@localhost tmp]# mkdir dtest

~~~     给测试目录赋予 SGID
[root@localhost tmp]# chmod g+s dtest
 
~~~     SGID 已经生效
[root@localhost tmp]# ll -d dtest/
drwxr-sr-x 2 root root 4096 120 06:04 dtest/
    
~~~     给测试目录权限,让普通用户可以写
[root@localhost tmp]# chmod 777 dtest/

~~~     切换成普通用户 user1
[root@localhost tmp]# su – user1
~~~     普通用户进入测试目录
[user1@localhost ~]$ cd /tmp/dtest/
 
~~~     普通用户建立 abc 文件
[user1@localhost dtest]$ touch abc
~~~     abc 文件的默认属组不再是 user1 用户组,而变成了 dtest 组的属组 root

[user1@localhost dtest]$ ll
-rw-rw-r-- 1 user1 root 0 120 06:07 abc
二、SetGID:实验专题
### --- 针对文件的作用

[root@server11 ~]# locate httpd.conf
[root@server11 ~]# ll /usr/bin/locate                               // locate所属组是s权限的
-rwx--s--x. 1 root slocate 40520 Apr 11  2018 /usr/bin/locate
[yanqi@server11 ~]$ mkdir yanqi
[yanqi@server11 ~]$ cd yanqi/
[yanqi@server11 yanqi]$ touch yanqi1
[root@server11 ~]# chmod g+s /home/yanqi/yanqi/
[root@server11 ~]# ll -d /home/yanqi/yanqi/
drwxrwsr-x 2 yanqi yanqi 34 Mar 12 00:46 /home/yanqi/yanqi/
[yanqi@server11 yanqi]$ ll
-rw-rw-r-- 1 yanqi yanqi 0 Mar 12 00:44 yanqi1
-rw-rw-r-- 1 yanqi root 0 Mar 12 00:47 yanqi2                       // 所属组为root组

一、文件特殊权限之 Sticky BIT
### --- 文件特殊权限之 Sticky BIT

~~~     Sticky BIT 粘着位,也简称为 SBIT。SBIT 目前仅针对目录有效,
~~~     它的作用如下:粘着位目前只对目录有效
~~~     普通用户对该目录拥有 w 和 x 权限,即普通用户可以在此目录拥有写入权限
~~~     如果没有粘着位,因为普通用户拥有 w 权限,所以可以删除此目录下所有文件,
~~~     包括其他用户建立的文件。一但赋予了粘着位,除了 root 可以删除所有文件,
~~~     普通用户就算拥有 w 权限,也只能删除自己建立的文件,但是不能删除其他用户建立的文件。
### --- 设定文件特殊权限
### --- 特殊权限这样来表示:

~~~     4 代表 SUID
~~~     2 代表 SGID
~~~     1 代表 SBIT
~~~     赋予 SUID 权限
[root@localhost ~]# chmod 4755 ftest
 
~~~     赋予 SGID 权限
[root@localhost ~]# chmod 2755 ftest

~~~     SBIT 只对目录有效,所以建立测试目录,并赋予 SBIT
[root@localhost ~]# mkdir dtest
[root@localhost ~]# chmod 1755 dtest/
二、文件特殊权限之 Sticky BIT:实验专题
### --- tmp本身是有SBIT权限
~~~     权限想要起作用,需要给目录授予777权限

[root@server11 ~]# ll -d /tmp/
drwxrwxrwt. 10 root root 285 Mar 12 00:50 /tmp/
[root@server11 ~]# touch /tmp/yanqi1 
[yanqi@server11 ~]$ touch /tmp/yanqi2
[root@server11 ~]# ll /tmp/
total 0
-rw-r--r-- 1 root  root  0 Mar 12 00:51 yanqi1
-rw-rw-r-- 1 yanqi yanqi 0 Mar 12 00:51 yanqi2
[yanqi@server11 ~]$ rm -rf /tmp/yanqi1                              // root的文件是不可以删除的
rm: cannot remove ‘/tmp/yanqi1’: Operation not permitted

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(17)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示