【學(xué)了就忘Linux權(quán)限管理】— 6.文件特殊權(quán)限SetGID

一、SetGID

SGID即可以針對(duì)文件生效,也可以針對(duì)目錄生效,這和SUID明顯不同。

1、針對(duì)文件的作用

針對(duì)文件,SGID的含義如下:

(1)只有可執(zhí)行的二進(jìn)制程序才能設(shè)置SGID權(quán)限。

同SUID。

(2)命令執(zhí)行者要對(duì)該程序擁有x(執(zhí)行)權(quán)限。

同SUID。

(3)命令執(zhí)行在執(zhí)行程序的時(shí)候,組身份升級(jí)為該程序文件的屬組。
#查看locate命令
[root@localhost ~ ] # ll /usr/bin/locate
-rwx-s--x 1 root slocate 35612    8月 24 2010 /usr/bin/locate

#查看mlocate.db文件
[root@localhost ~ ] # ll /var/lib/mlocate/mlocate.db
-rw-r---1 root slocate 1838850  1月 20 04:29 /var/lib/mlocate/mlocate.db

當(dāng)普通用戶(hù)user1執(zhí)行locate命令時(shí),會(huì)發(fā)生如下事情:

  • /usr/bin/locate是可執(zhí)行二進(jìn)制程序,可以賦予SGID,
  • 執(zhí)行命令的用戶(hù)user1,對(duì)/usr/bin/locate命令擁有執(zhí)行權(quán)限。
  • 執(zhí)行/usr/bin/locate命令時(shí),組身份會(huì)升級(jí)為slocate組,而slocate組對(duì)
    /var/lib/mlocate/mlocate.db數(shù)據(jù)庫(kù)擁有r權(quán)限,所以普通用戶(hù)可以使用locate命令查詢(xún)mlocate.db數(shù)據(jù)庫(kù)。
  • 命令結(jié)束,user1用戶(hù)的組身份返回為user1組。
(4)SetGID權(quán)限同樣只在該程序執(zhí)行過(guò)程中有效,也就是說(shuō)組身份改變只在程序執(zhí)行過(guò)程中有效。

2、針對(duì)目錄的作用

SGID針對(duì)目錄設(shè)置,含義如下:

  • 普通用戶(hù)必須對(duì)此目錄擁有r和x權(quán)限,才能進(jìn)入此目錄。
  • 普通用戶(hù)在此目錄中的有效組會(huì)變成此目錄的屬組。
  • 若普通用戶(hù)對(duì)此目錄擁有w權(quán)限時(shí)(也就是其他人權(quán)限是7,普通用戶(hù)才能進(jìn)入目錄),新建的文件的默認(rèn)屬組是,這個(gè)目錄的屬組。

不明白,看下面的例子。

#進(jìn)入臨時(shí)目錄做此實(shí)驗(yàn)。因?yàn)榕R時(shí)目錄才允許普通用戶(hù)修改
[root@localhost ~ ] # cd /tmp/

#建立測(cè)試目錄
[root@localhost tmp] # mkdir dtest

#給測(cè)試目錄賦予SGID
[root@localhost tmp] # chmod g+s dtest

#查看dtest/目錄,SGID已經(jīng)生效
[root@localhost tmp] # ll -d dtest/
drwxr-sr-x 2 root `root` 4096 1月 20 06:04 dtest/

#給測(cè)試目錄權(quán)限,讓普通用戶(hù)可以寫(xiě),
#注意權(quán)限一定要是777,否則普通用戶(hù)進(jìn)入不了目錄。
[root@localhost tmp]#chmod 777 dtest/

#切換成普通用戶(hù)userl
[root@localhost tmp] # su - user1

#普通用戶(hù)進(jìn)入測(cè)試目錄,
#如果上邊權(quán)限不設(shè)置成777,測(cè)試普通用戶(hù)進(jìn)不來(lái)。
[user1@localhost ~ ]$ cd /tmp/dtest/

#普通用戶(hù)建立abc文件
[user1@localhost dtest]$ touch abc

#abc文件的默認(rèn)屬組不再是user1用戶(hù)組,而變成了dtest組的屬組root
[user1@localhost dtest]$ ll
總用量0
-rw-rw-r-1 userl `root` 0 1月 20 06:07 abc

總結(jié)上邊例子的意思:也就是說(shuō),root用戶(hù)如果給目錄賦予了SGID特殊權(quán)限。那么普通用戶(hù)(user1)在該文件中所創(chuàng)建的文件的所有組不是user1,而是這個(gè)目錄的所屬組。

SGID針對(duì)目錄的作用本身沒(méi)有風(fēng)險(xiǎn)。就是賦予目錄的權(quán)限是777有些風(fēng)險(xiǎn),能不用就別用。
關(guān)于特殊權(quán)限SGID的針對(duì)目錄的作用,了解一下即可。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 內(nèi)容概要 為什么要進(jìn)行權(quán)限管理? 在生產(chǎn)服務(wù)器上,所有用戶(hù)都用管理員權(quán)限登錄嗎?顯然這是不可以也是不可能的。 因此...
    若兮緣閱讀 1,071評(píng)論 1 9
  • 一、基本權(quán)限 基本概述:不同用戶(hù)有不同權(quán)限,在服務(wù)器上,每個(gè)用戶(hù)都會(huì)定義合理的等級(jí)。一般只有一個(gè)管理員,其他都是普...
    李菜菜同學(xué)閱讀 733評(píng)論 0 4
  • Linux下一切皆文件,但是文件由于文件的屬性的不同,在查找上可以針對(duì)不同的文件做相應(yīng)的查找以便加快查詢(xún)速度和減少...
    常青藤成閱讀 1,128評(píng)論 0 0
  • 沒(méi)有徹頭徹尾的絕望。真正的成功,不是來(lái)自別人的認(rèn)可和評(píng)價(jià),而是由自我滿(mǎn)足帶來(lái)的滿(mǎn)足寧?kù)o平和的心態(tài),如果你在你自己力...
    BeautifulSoulpy閱讀 1,391評(píng)論 0 2
  • 1、什么是爬蟲(chóng)? 請(qǐng)求網(wǎng)站并提取數(shù)據(jù)的自動(dòng)化程序 2、爬蟲(chóng)基本流程 發(fā)起請(qǐng)求:通過(guò)HTTP庫(kù)向目標(biāo)站點(diǎn)發(fā)起請(qǐng)求...
    即將擁有八塊腹肌的程序猿閱讀 254評(píng)論 0 0

友情鏈接更多精彩內(nèi)容