中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux中SUID,SGID與SBIT的奇妙用途詳解

發布時間:2020-09-03 12:20:49 來源:腳本之家 閱讀:123 作者:小菜鳥上校 欄目:服務器

前言 

linux對文件的權限管理簡直是讓人嘆為觀止,又回顧了一下SUID,SGID和SBIT的作用,總結一下。

其實SUID和SGID的作用跟sudo是相似的。當用戶A想執行一個原本屬于用戶B的可執行文件時,若B的文件設置了suid位,則A在執行時是以用戶 B的身份來執行。

SUID是Set UID的簡稱,翻譯過來是設置用戶ID,感覺很別扭,還是覺得SUID最為簡煉。它會出現在文件擁有者權限的執行位上,具有這種權限的文件會在其執行時,使調用者暫時獲得該文件擁有者的權限。例如,使用如下命令:

ls -l /usr/bin/passwd

我們會得到如下的結果:

-rwsr-xr-x 1 root root 42824 Sep 13  2012 /usr/bin/passwd

可以看到,在文件擁有者的執行位上出現為s而不是x,所以說passwd這個程序是具有SUID權限的。我們直到在修改用戶密碼的時候,用的就是passwd這個命令,而我們又知道在linux下面,用戶密碼是存儲在/etc/shadow這個文件里面的。首先查看一下/etc/shadow這個文件的權限:

ls -l /etc/shadow

返回的結果如下:

-rw-r----- 1 root shadow 1138 Dec 13 20:00 /etc/shadow

由上面的結果,我們知道只有root可以往shadow文件中寫入數據,其他用戶連查看的權限都沒有。那我們平時是怎么修改密碼呢?沒錯,就是和SUID有關。當我們使用passwd命令時,就獲得了passwd的所有者即root的權限,進而可以對shadow文件進行寫入操作。

使用SUID肯定滿足一下幾點:

1.SUID只對二進制文件有效

2.調用者對該文件有執行權

3.在執行過程中,調用者會暫時獲得該文件的所有者權限

4.該權限只在程序執行的過程中有效

《鳥哥的linux私房菜》中,有一張圖特別能表示這個意思:

linux中SUID,SGID與SBIT的奇妙用途詳解

SGID即Set GID的縮寫,它出現在文件所屬組權限的執行位上面,它對普通二進制文件和目錄都有效。當它作用于普通文件時,和SUID類似,在執行該文件時,用戶將獲得該文件所屬組的權限。當SGID作用于目錄時,意義就非常重大了。當用戶對某一目錄有寫和執行權限時,該用戶就可以在該目錄下建立文件,如果該目錄用SGID修飾,則該用戶在這個目錄下建立的文件都是屬于這個目錄所屬的組。

SBIT即Sticky Bit,它出現在其他用戶權限的執行位上,它只能用來修飾一個目錄。當某一個目錄擁有SBIT權限時,則任何一個能夠在這個目錄下建立文件的用戶,該用戶在這個目錄下所建立的文件,只有該用戶自己和root可以刪除,其他用戶均不可以。例如:

ls -ld /tmp

可以得到以下結果:

drwxrwxrwt 12 root root 12288 Dec 17 16:33 /tmp

可以看到最后一位為t,這說明/tmp文件就是這種文件。

那么,如何設置上面所說的三種權限呢?首先來介紹一點預備的知識,用數字來表示權限:

4表示SUID
2表示SGID
1表示SBIT

如果兩個或三個權限同時存在時,就將者寫權限的值相加就是需要的結果了。利于SUID和SGID同時存在,則為6。下面可以看一下修改的例子:

chmod 4777 test

使test文件具有SUID權限,你可能已經看明白了,就是在普通文件權限前面再加上這些特殊權限值就可以了。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

罗源县| 永昌县| 岳阳市| 合肥市| 隆昌县| 壤塘县| 奇台县| 昭通市| 梁河县| 江油市| 博罗县| 鞍山市| 甘谷县| 修水县| 临汾市| 会理县| 宁国市| 礼泉县| 南昌县| 西乡县| 彭泽县| 浦县| 英吉沙县| 汾阳市| 海门市| 万载县| 马关县| 岳池县| 嵩明县| 新龙县| 仁布县| 彝良县| 宜州市| 洞头县| 胶州市| 凌海市| 读书| 沾益县| 修武县| 金华市| 道真|