Linux 特殊許可權
1、SUID
SUID是一種對二進位制程式進行設定的特殊許可權,可以讓二進位制程式的執行者暫時具有屬主的許可權(僅對具有執行許可權的二進位制程式有用)
檔案擁有者的許可權有rwx變成rws,x改為s,假如原先沒有x,則變為大寫的S
ls -l /bin/passwd
-rwsr-xr-x. 1 root root 27856 Apr 1 2020 /bin/passwd
設定方法:u+s
2、SGID
第一個場景:對二進位制程式進行設定時,可以讓執行這暫時獲取檔案所屬組的許可權。
例如ps命令,除root或歸屬system組成員外,其他使用者都沒有讀取該檔案的許可權。當其他使用者執行時,暫時獲得system組的許可權
第二個場景:對目錄進行設定時,讓目錄內新建立的子檔案主動繼承該父目錄原所屬組。
假設需要在一個組內設定共享目錄,讓組內的一切人員都能夠讀取目錄中的內容,就可以建立組內共享目錄後,在該目錄上設定SGID特殊許可權位。
這樣,組內的任何人員在該目錄中建立的任何子檔案都歸屬於該目錄的所屬組,而不再是子檔案的建立者所屬組。
目錄組的許可權由rwx變成rws,x改為s,假如原先沒有x,則變為大寫的S
設定方法:g+s
3、SBIT
SBIT保證使用者只能刪除自己的檔案,當對目錄設定SBIT後,只能由root或者屬主執行刪除操作
目錄的其他使用者許可權由rwx變成rwt,x改為t,假如原先沒有x,則變為大寫的T
設定方法:o+t
訪問控制許可權(setfacl,getfacl)
假如對目錄設定了ACL,則目錄中的檔案會繼承其許可權;如針對檔案設定了ACL,則檔案不再繼承其父目錄的許可權
隱藏許可權(chattr,lsattr)