linux許可權補充:rwt rwt rws rws 特殊許可權
眾所周知,linux的檔案許可權如: 777;666等,其實只要在相應的檔案上加上uid的許可權,就可以用到加許可權人的身份去執行這個檔案。所以我們只需要將bash複製出來到另乙個地方,然後用root加上uid許可權,只要使用者執行此shell就可以用用root的身份來執行任何檔案了
乙個檔案都有乙個所有者, 表示該檔案是誰建立的. 同時, 該檔案還有乙個組編號, 表示該檔案所屬的組, 一般為檔案所有者所屬的組.
如果是乙個可執行檔案, 那麼在執行時, 一般該檔案只擁有呼叫該檔案的使用者具有的許可權. 而setuid, setgid 可以來改變這種設定.
setuid:該位是讓普通使用者可以以root使用者的角色執行只有root帳號才能執行的程式或命令。比如我們用普通使用者執行passwd命令來更改自己的口令,實際上最終更改的是/etc/passwd檔案我們知道/etc/passwd檔案是使用者管理的配置檔案,只有root許可權的使用者才能更改
[root@localhost ~]# ls -l /etc/passwd
-rw-r–r– 1 root root 2379 04-21 13:18 /etc/passwd
作為普通使用者如果修改自己的口令通過修改/etc/passwd肯定是不可完成的任務,但是不是可以通過乙個命令來修改呢答案是肯定的,作為普通使用者可以通過passwd 來修改自己的口令這歸功於passwd命令的許可權我們來看一下;
[root@localhost ~]# ls -l /usr/bin/passwd
-r-s–x–x 1 root root 21944 02-12 16:15 /usr/bin/passwd
因為/usr/bin/passwd 檔案已經設定了setuid 許可權位(也就是r-s–x–x中的s),所以普通使用者能臨時變成root,間接的修改/etc/passwd,以達到修改自己口令的許可權
setgid: 該許可權只對目錄有效. 目錄被設定該位後, 任何使用者在此目錄下建立的檔案都具有和該目錄所屬的組相同的組.
sticky bit: 該位可以理解為防刪除位. 乙個檔案是否可以被某使用者刪除, 主要取決於該檔案所屬的組是否對該使用者具有寫許可權. 如果沒有寫許可權, 則這個目錄下的所有檔案都不能被刪除, 同時也不能新增新的檔案. 如果希望使用者能夠新增檔案但同時不能刪除檔案, 則可以對檔案使用sticky bit位. 設定該位後, 就算使用者對目錄具有寫許可權, 也不能刪除該檔案.
下面說一下如何操作這些標誌:
操作這些標誌與操作檔案許可權的命令是一樣的, 都是 chmod. 有兩種方法來操作,
1) chmod u+s temp – 為temp檔案加上setuid標誌. (setuid 只對檔案有效)
chmod g+s tempdir – 為tempdir目錄加上setgid標誌 (setgid 只對目錄有效)
chmod o+t temp – 為temp檔案加上sticky標誌 (sticky只對檔案有效)
2) 採用八進位制方式. 對一般檔案通過三組八進位制數字來置標誌, 如 666, 777, 644等. 如果設定這些特殊標誌, 則在這組數字之外外加一組八進位制數字. 如 4666, 2777等. 這一組八進位制數字三位的意義如下,
abca - setuid位, 如果該位為1, 則表示設定setuid 4—
b - setgid位, 如果該位為1, 則表示設定setgid 2—
c - sticky位, 如果該位為1, 則表示設定sticky 1—
設定完這些標誌後, 可以用 ls -l 來檢視. 如果有這些標誌, 則會在原來的執行標誌位置上顯示. 如
rwsrw-r– 表示有setuid標誌
rwxrwsrw- 表示有setgid標誌
rwxrw-rwt 表示有sticky標誌
那麼原來的執行標誌x到**去了呢? 系統是這樣規定的, 如果本來在該位上有x, 則這些特殊標誌顯示為小寫字母 (s, s, t). 否則, 顯示為大寫字母 (s, s, t)
linux設定特殊許可權位
設定特殊許可權位 檔案 目錄 基本許可權 特殊檔案 命令 uid gid 使用者標誌身份的唯一數字 500 500 程序執行 euid egid 使用者 zhy su zhy ps 500 500 chmod u s bin vi boot rwxr xr x root root bin viss ...
許可權位操作
定義許可權列舉 flags public enum guicontroltypes 構建許可權 guicontroltypes docontrols guicontroltypes.aarcontrol guicontroltypes.commandcontrol guicontroltypes.f...
linux 檔案特殊許可權位小結
特殊位作用 suid 對乙個可執行檔案,不是以發起者身份來獲取資源,而是以可執行檔案的屬主身份來執行。sgid對乙個可執行檔案,不是以發起者身份來獲取資源,而是以可執行檔案的屬組身份來執行。sticky 粘滯位,通常對目錄而言。通常對於全域性可寫目錄 other也可寫 來說,讓該目錄具有sticky...