linux中文件與目錄的特殊權限
阿新 • • 發佈:2018-03-26
使用 cnblogs 其他 time 分析 臨時 用戶 特殊權限 sbit
time:18.03.26
以以下2個典型的文件及目錄來分析:
ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 Jan 29 2014 /usr/bin/passwd
ll -d /tmp
drwxrwxrwt. 23 root root 4096 Mar 25 23:53 /tmp
SUID
當s
出現在文件擁有者的x
權限上時,如我們上面看到的/usr/bin/passwd
這個文件的權限時-rwsr-xr-x
,此時就被稱為SET UID
簡稱SUID
.
SUID權限僅對二進制可執行文件有效
執行者對於該文件具有x的權限
本權限僅在執行該文件的過程中有效
執行者將具有該文件擁有者的權限
舉例:
普通用戶使用passwd
命令修改自己的密碼, 實際上最終更改的是/etc/passwd
文件.該文件權限如下:
ll /etc/passwd
-rw-r--r--. 1 root root 2394 Mar 25 23:17 /etc/passwd
可以看到只有root
用戶才有寫權限, 因為/usr/bin/passwd
設置了suid
權限位,普通用戶執行此命令時臨時擁有root
權限以間接地修改/etc/passwd
從而修改自己的密碼.
設置方法
chmod u+s <文件或目錄>
SGID
當s
出現在目錄或文件的所有組的x
權限上時稱為SET GID
簡稱SGID
設置方法
chmod g+s <文件或目錄>
SBIT
當t
出現在目錄的其他用戶的x
權限上時, 稱為Sticky Bit
簡稱SBIT
[僅對目錄有效, 對文件無效]
作用:
當用戶在該目錄下建立文件或目錄時,僅有自己與
root
才有權力刪除.
最具有代表的就是/tmp
目錄,任何人都可以在/tmp
內增加、修改文件(因為權限全是rwx
),但僅有該文件/目錄建立者與root
能夠刪除自己的目錄或文件
設置方法
chmod o+t <目錄>
若特殊權限未設置成功則顯示為大寫字母 {S, S, T}
linux中文件與目錄的特殊權限