您的位置:首頁>科技>正文

Linux檔的特殊許可權

小白電腦課堂開課啦!遊戲團戰就死機, 多半是廢了。 大家好我是小白。 在Linux中你會發現, 有些檔即使沒有任何許可權, 但是其他使用者還是能夠寫入資料。 例如在rhel7中密碼保存在/ect/shadow這個檔中, 檔本身除了超級管理員外沒有其他任何許可權, 但其他用戶可以通過passwd來修改自己的密碼。 這是為什麼呢?今天小白就和同學們說一說, Linux系統中檔的特殊許可權。

一、Linux檔的特殊許可權是用於彌補一般許可權不能實現的功能, 是針對於檔設置的一種特殊的功能。

二、Linux檔的特殊許可權:

SUID:讓執行者臨時擁有屬主的許可權(僅對擁有執行許可權的二進位程式有效);

SGID:讓執行者臨時擁有屬組的許可權(對擁有執行許可權的二進位程式設置),

在該目錄中創建的檔自動繼承此目錄的使用者組(只可以對目錄設置);

SBIT(Sticky Bit):只可管理自己的資料而不能刪除他人檔(僅對目錄有效)。

三、SUID(SET UID)

讓執行者臨時擁有屬主的許可權(僅對擁有執行許可權的二進位程式有效)。

普通使用者用passwd修改自己的密碼, 實際上是對/ect/shadow檔的修改。 為什麼該檔沒有任何許可權(除超級管理員外)而其他使用者還能夠寫入資料呢?這就要歸功於SUID特殊許可權了。

如圖所示, 在所有者許可權的可執行許可權位元上有字母“s”就說明該可執行檔具有SUID特殊許可權。

四、SGID(SET GID)

讓執行者臨時擁有屬組的許可權(對擁有執行許可權的二進位程式設置),

在該目錄中創建的檔自動繼承此目錄的使用者組(只可以對目錄設置)。

在所屬組許可權的可執行許可權位元上有字母“s”就說明該可執行檔或目錄具有SGID特殊許可權。

對於檔來說, 執行者必須擁有執行該檔的執行許可權;

對目錄來說, 使用者在該目錄下的群組會變成該目錄的群主。

五、SBIT(Sticky Bit)

只可管理自己的資料而不能刪除他人檔(僅對目錄有效)。

在其他用戶許可權的可執行許可權位元上有字母“t”就說明該目錄具有SBIT特殊許可權。

在Linux中/tmp目錄就具有這樣的許可權。

我們可以用root使用者在該目錄下創建一個檔, 然後用其他用戶找到該檔, 嘗試刪除該檔, 結果很明顯是不能刪除的。 同學們可以自己試一試, 增強一下動手能力。

六、我們也可以用“chmod”命令來修改檔的特殊許可權。 (點這裡, chmod命令說明)。

修改特殊許可權的命令:

chmod u+s 檔案名 添加SUID許可權

chmod g+s 檔案名 添加SGID許可權

chmod o+t 目錄名 添加SBIT許可權

如果去除特殊許可權用“-”代替“+”就可以了。

告別電腦小白就從小白電腦課堂開始!

Next Article
喜欢就按个赞吧!!!
点击关闭提示