3 4 Linux中附加許可權 粘滯位許可權

2021-08-13 06:41:55 字數 2559 閱讀 1798

1)只有可執行二進位制程式才能設定suid許可權

2)命令執行者要對該程式擁有x(執行)許可權(如果當前檔案沒有執行許可權,著會出現大s許可權,大s許可權是無效的,s=s+x,s才是超級許可權。)

3)命令執行者在執行該程式時獲得該程式檔案屬主身份

4)setuid許可權只在程式執行過程中有效

5)設定setuid方法 許可權4代表suid

chmod 4755 [檔名]

chmod

u+s[檔名]

取消setuid

chmod

u-s[檔名]

chmod 0755 [檔名]

我們可一看出,設定了setuid後的檔案,在使用者許可權那裡,執行許可權變為s

[root@localhost ~]# chmod 4755 1

[root@localhost ~]# ll 1

-rwsr-xr-x. 1 root root 47

12月 820:

121

passwd擁有setuid許可權,所以普通使用者可以修改自己密碼

cat命令沒有setuid許可權,所以普通使用者不能檢視/etc/shadow檔案內容

讓沒有許可權的人執行時獲得所有者的許可權,這個所有者一般為root,常見應用如passwd

檔案所有者要有x許可權才有意義,所有者沒有執行許可權它就會變s

#!/bin/bash

find / -perm -4000 -o -perm -2000> /tmp/setuid.check

for i in $(cat /tmp/setuid.check)

dogrep $i /home/suid.log> /dev/null

if [ "$?" != "0" ]

then

echo

"$i isn't in listfile!">>/home/suid_log_$(date +%f)

fidone

rm -rf /tmp/setuid.check

1.1)setgid針對檔案的作用

2)只有可執行二進位制程式才能設定sgid許可權

3)命令執行者要對該程式擁有x(執行)許可權

4)命令執行執行程式時,組身份公升級為該程式檔案的屬組

5)setgid許可權只在程式執行過程中有效

> 例子 /usr/bin/locate具有setgid身份
2.1)setgid針對目錄的作用

2)普通使用者必須對此目錄必須擁有r和x許可權,才能進入此目錄

3)普通使用者在此目錄中的有效組會變成此目錄的屬組

4)若普通使用者對此目錄擁有w許可權,新建的檔案的缺省屬組是這個目錄的屬組

3.設定setgid

設定setgid

chmod

g+s[檔名]

chmod 2755 [檔名]

取消setgid

chmod

g-s[檔名]

chmod 0755 [檔名]

可以看到設定了setgid許可權,使用者組許可權變成乙個s

[root@localhost ~]# chmod 2755 2

[root@localhost ~]# ll 2

-rwxr-sr-x. 1 root root 80

12月 820:

412

1)suid只能對執行檔案生效,sgid能對目錄和執行檔案生效,sbit只能對目錄生效

2)要賦予sbit 許可權必須給目錄普通使用者賦予7許可權,因此也比較危險。

3)賦予sbit許可權: chmod o+t 或者 chmod 1***

4)目錄有sbit許可權後,任何普通使用者都可以在目錄下新建檔案,但是只能刪除自己建立的檔案,不允許刪除其它使用者的檔案。

5)/tmp/ 目錄預設有sbit許可權

在其他人的許可權那裡,執行許可權變為t

[root@localhost ~]# ll /tmp -d 

drwxrwxrwt. 10 root root 4096

12月 915:

49 /tmp

6)設定sbit許可權

增加許可權

chmod 1775 [檔案]

chmod

o+t[檔案]

刪除許可權

chmod 0775 [檔案]

chmod

o-t[檔案]

此許可權符合臨時目錄的要求

setuid僅對檔案生效

setgid對檔案目錄都有效

sticky bit 僅對目錄生效

Linux中粘滯位許可權

linux下的檔案許可權 在linux下每乙個檔案和目錄都有自己的訪問許可權,訪問許可權確定了使用者能否訪問檔案或者目錄和怎樣進行訪問。最為我們熟知的乙個檔案或目錄可能擁有三種許可權,分別是讀 寫 和執行操作,在這裡不做詳細說明。我們建立乙個檔案後系統會預設地賦予所有者讀和寫許可權。當然我們也可以自...

linux中SET位許可權和粘滯位許可權詳解

對檔案或目錄進行訪問控制時,讀取 寫入 執行 是最基本的三種許可權型別。除此之外,在linux中還存在著set位許可權 suid sgid 粘滯位 sticky bit 等為檔案或目錄提供額外的控制方式。下面我們就來聊聊這兩個非常有用的方式。set位許可權 位許可權多用於給可執行的程式或指令碼檔案進...

Linux中粘滯位

粘滯位 stickybit 又稱粘著位,是unix檔案系統許可權的乙個旗標。最常見的用法在目錄上設定粘滯位,也只能針對目錄設定,對於目錄內檔案有效。則設定了粘滯位後,只有目錄內檔案的所有者或者root才可以刪除或移動該檔案。如果不為目錄設定粘滯位,任何具有該目錄寫和執行許可權的使用者都可以刪除和移動...