日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

理解setuid()、setgid()和sticky位

作者:楊壯壯666 更新時間: 2022-07-10 編程語言

Linux SETUID機制?

(1)進程運行時能夠訪問哪些資源或文件,不取決于進程文件的屬主屬組,而是取決于運行該命令的用戶身份的uid/gid,以該身份獲取各種系統資源。

(2)對一個屬主為root的可執行文件,如果設置了SUID位,則其他所有普通用戶都將可以root身份運行該文件,獲取相應的系統資源。

(3)可以簡單地理解為讓普通用戶擁有可以執行“只有root權限才能執行”的特殊權限。

(4)setuid,setuid的作用是讓執行該命令的用戶以該命令擁有者的權限去執行,比如普通用戶執行passwd時會擁有root的權限,這樣就可以修 改/etc/passwd這個文件了。它的標志為:s,會出現在x的地方,例:-rwsr-xr-x 。而setgid的意思和它是一樣的,即讓執行文件的用戶以該文件 所屬組的權限去執行。

(5)/tmp是系統的臨時文件目錄,所有的用戶在該目錄下擁有所有的權限,也就是說在該目錄下可以任意創建、修改、刪除文件,那如果 用戶A在該目錄下創建了一個文件,用戶B將該文件刪除了,這種情況我們是不能允許的。為了達到該目的,就出現了stick bit(粘滯位)的概念。 它是針對目錄來說的,如果該目錄設置了stick bit(粘滯位),則該目錄下的文件除了該文件的創建者和root用戶可以刪除和修改/tmp目錄下的 stuff,別的用戶均不能動別人的,這就是粘滯位的作用。

Chmod命令中的特殊權限位含義:

1、S_ISUID 04000 文件的 (set user-id on execution)位

2、S_ISGID 02000 文件的 (set group-id on execution)位

3、S_ISVTX 01000 文件的sticky 位

上面的都是8進制數。

如何設置UID、GID、STICK_BIT:

SUID:置于 u 的 x 位,原位置有執行權限,就置為 s,沒有了為 S .
chmod u+s xxx # 設置setuid權限
chmod 4551 file // 權限: r-sr-x—x

chmod u+s xxx # 設置setuid權限

SGID:置于 g 的 x 位,原位置有執行權限,就置為 s,沒有了為 S .?
chmod g+s xxx # 設置setgid權限?
chmod 2551 file // 權限: r-xr-s--x
?

STICKY:粘滯位,置于 o 的 x 位,原位置有執行權限,就置為 t ,否則為T .

chmod o+t xxx # 設置stick bit權限,針對目錄

chmod 1551 file // 權限: r-xr-x--t


拓展:
??

1.linux下獲取占用內存資源最多的10個進程,可以使用如下命令組合:

ps aux|head -1;

?ps aux|grep -v PID|sort -rn -k +4|head

2.命令組合解析(針對CPU,MEN也同樣道理):

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

3.該命令組合實際上是下面兩句命令:

ps aux|head -1

ps aux|grep -v PID|sort -rn -k +3|head

4.查看網卡流量

sar -n DEV 2 20

原文鏈接:https://blog.csdn.net/weixin_49889731/article/details/125592363

欄目分類
最近更新