Linux 特殊權限


Linux 有三個高級權限suid,sgid,sticky。

 

1、suid

suid 屬性只能運用在可執行文件上,含義是開放文件所有者的權限給其他用戶,即當用戶執行該執行文件時,會擁有該執行文件所有者的權限。如果給一個非二進制文件文件附加suid權限,則會顯示大寫S,屬於無效。

latiny 用戶能夠執行passwd 命令修改自己的密碼,修改密碼其實就是修改/etc/shadow 這個文件,查看/etc/passwd這個文件的權限,發現除了root其他人沒有寫權限,但是latiny用戶能夠成功執行passwd,其原因就在於passwd這個命令的權限是rwsrw----,其中's'的作用就是讓執行命令的人具有和該命令擁有者相同的權限

[root@localhost latiny]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd

添加權限命令:

chmod u+s file

chmod 4765 file

 

2、sgid

sgid 屬性可運用於文件或者目錄,運用在文件的含義是開放文件所屬組的權限給其他用戶,即當用戶執行該執行文件時,會擁有該執行文件所屬組用戶的權限。如果給一個非二進制文件文件附加sgid權限,則會顯示大寫S,屬於無效。

運用在目錄上的含義是,在該目錄下所有用戶創建的文件或者目錄的所屬組都和其一樣。即如果/home/latiny目錄具有sgid權限,且所屬組是latiny,則任何用戶在/home/latiny下創建的子目錄或者文件的所屬組都是latiny。

添加權限命令:

chmod g+s directory

chmod 2765 directory

 

3、sticky

sticky 權限只能運用於目錄上,含義是該目錄下所有的文件和子目錄只能由所屬者刪除,即使其的權限是777或者其他。一個公共目錄,每個人都可以創建文件,刪除自己的文件,但不能刪除別人的文件(僅對目錄有效)。

添加權限命令:

chmod o+t directory

chmod 1765 directory


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM