粉絲不過w
普通文件默認是 644 也就是:
自已有讀寫(rw),同組人員有讀(r),其它有讀(r)
默認權限可通過 umask 修改
默認 umask 爲 022
文件:666 - 022 = 644
目錄:777 - 022 = 755
如 umask 044 的指令,則生成的文件目錄權限
文件:666 - 044 = 622
目錄:777 - 044 = 733
r(Read,讀取):文件:具有讀取文件內容的權限
目錄:具有瀏覽目錄的權限
w(Write,寫入):文件:具有新增、修改文件內容的權限
目錄:具有刪除、移動目錄內文件的權限
x(eXecute,執行):文件:具有執行文件的權限
目錄:該用戶具有進入目錄的權限
s 或 S(SUID,Set UID):小寫 s :能執行
大寫 S :不能執行
可執行的文件搭配這個權限,便能得到特權,任意存取該文件的所有者能使用的全部系統資源
請注意具備 SUID 權限的文件,黑客經常利用這種權限,以 SUID 配上 root 帳號擁有者,無聲無息地在系統中開扇後門,供日後進出使用
r ----- 讀訪問
w ----- 寫訪問
x ----- 執行許可
s ----- SUID / SGID
t ----- sticky 位
用戶修改密碼,是通過運行命令 passwd 來實現的
最終必須要修改/etc/passwd 文件,而 passwd 的文件的屬性是
passwd 文件只有對於 root 用戶是可寫的,而對於所有的他用戶來說都是沒有寫權限的
一個普通的用戶如何能夠通過運行 passwd 命令修改這個 passwd 文件,爲解決這個問題, SUID/SGID 便應運而生
AT&T 對它申請了專利
進程在運行的時候,有一些屬性,其中包括 實際用戶 ID,實際組ID,有效用戶 ID,有效組 ID 等
實際用戶 ID 和實際組 ID 標識我們是誰,誰在運行這個程序,一般這 2 個字段在登陸時決定,在一個登陸會話期間, 這些值基本上不改變
有效用戶 ID 和有效組 ID 則決定了進程在運行時的權限
內核在決定進程是否有文件存取權限時, 是採用了進程的有效用戶 ID 來進行判斷的
當一個程序設置了爲 SUID 位時,內核就知道了運行這個程序的時候,應該認爲是文件的所有者在運行這個程序
該程序運行的時候,有效用戶 ID 是該程序的所有者
T 或 T(Sticky):小寫 t 表示能執行,大寫 T 表示不能執行/tmp 和 /var/tmp 目錄供所有用戶暫時存取文件,亦即每位用戶皆擁有完整的權限進入該目錄,去瀏覽、刪除和移動文件
R,W,X 是基本權限 S,T 是特殊權限.
各權限位代表的數字值:
R:4
W:2
X:1
suid:4
sgid:2
sticky:1
當使用特殊權限位時 chmod 的用法:
例:
chmod 7000 後的權限: ---S--S--T
chmod 7755 後的權限: -rwsr-sr-t