關於文件目錄等的特殊權限setuid, setgid , sticky
阿新 • • 發佈:2019-01-19
-- etc con tro root 位數 foo 移動 所有者
有三種特殊權限
總之, 設置這些特殊權限有兩種方法, 一是使用 chmod ugo的方式, 另一個是 使用 數字的方式, 通常的讀寫執行 權限 是 3位 數字, 那麽 特殊權限 就用 4位數字, 而且 用 第一位 數字來 表示 特殊權限, 比如 chmod 4775 some_command 那麽第一位數字 4 就是特殊權限 suid
setuid, 命令是:
chmod u+s some_command
或者chmod 4665 some_command
, 設置 setgid 命令是 :chmod g+s some_cmd
或chmod 2775 some_dir
設置 sticky的命令是:chmod o+t some_dir
chmod 1755 some_dir
set sticky 的作用是 某個目錄 可以被 所有 用戶 讀寫, 但是 這個目錄中的 每個文件, 只能 被 該文件的所有者(即創建者) 所刪除或移動. 用戶 不能刪除或 移動 其他用戶創建的 文件, 這個 就是 sticky的意思
適用對象: setuid 只能用於文件,
[root@localhost lee]# chmod 1544 foo 給 普通文件設置 sticky 特殊權限將會顯示為 T ,表示無效設置! [root@localhost lee]# ll -r-xr--r-T. 1 root root 4 Jan 18 21:25 foo 註意這裏的大寫T
使用 pwunconv 命令, 可以將 /etc/shadow中的密碼, 停止投影 , 返回寫到 /etc/passwd文件中, 註意兩點:
- 兩個文件中的 密碼都是一樣的, 不管是 投射前還是 停止投射後. 當然都不是明文, 都是加密後的字符串
- 當使用 pwunconv後 文件 /etc/shadow 將被 "臨時" 刪除, 不存在了
- 要註意的是, 用戶的文件, 首先是被 寫入到 /etc/passwd文件中的, 緊接著被 寫入/轉移到 /etc/shadow文件中 而原來的/etc/passwd中的 密碼域則被 星號* 所替換.
關於文件目錄等的特殊權限setuid, setgid , sticky