linux 檔案特殊許可權
一 檔案普通許可權介紹
在linux 中,檔案的許可權主要針對三類物件進行定義:
owner: 屬主, u
group: 屬組, g
other: 其他, o
每個檔案針對每類訪問者都定義了三種許可權:
r: 可使用檔案檢視類工具獲取其內容,用數字4表示
w: 可在此目錄中建立檔案,也可刪除此目錄中的檔案,用數字2表示
x: 可以使用ls -l檢視此目錄中檔案列表,可以cd進入此目錄,用數字1表示。
x:只給目錄x許可權,不給檔案x許可權
如下圖所示:
如果想修改檔案的許可權可以通過命令
chmod xyz filename 來實現,x 代表檔案所有者許可權,y代表檔案所有組許可權,y 代表其他使用者許可權,filename 表示檔案或者資料夾名字。
例如: chmod 755 file1 表示修改檔案file1的使用者所有者許可權為讀寫執行,所屬組許可權為讀加執行,其他人許可權為讀加執行。關於修改檔案普通許可權這裡不做詳細描述。
二 檔案特殊許可權
檔案的特殊許可權有三種: suid、sgid、sticky。suid 和sgid 是用來累加提公升許可權的,就是說如果原來的使用者可以訪問而切換到的使用者或者組不能訪問 這時候是照樣可以訪問的。下面將分別介紹這三種許可權。
2.1 suid
1. suid只對二進位制可執行程式有效,不能為普通檔案,這點非常重要!
2. 發起者對程式檔案必須擁有執行許可權
3. 啟動為程序之後,其程序的屬主為原程式檔案的屬主,比如 /bin/x的屬主為tom ,使用者 y 啟動了 /bin/x 的程序,這時候y 就相當於切換為tom了。
4. suid設定在目錄上無意義
配置命令 :chmod u+s filename 增加suid
chmod u-s filename 取消 suid
舉例:預設情況下普通使用者wang 是不能檢視 /etc/shadow 檔案的
[[email protected]~]$cat /etc/shadow
cat: /etc/shadow: permission denied
現在要通過執行二進位制檔案 /bin/cat 來實現該功能。
1. 在root賬號下增加/etc/cat 的 ssuid 許可權。
[[email protected]~]#chmod +s /bin/cat
2. 在wang 使用者上能通過.bin/cat 程式 可以順利檢視/etc/shadow 了。
sgid 可以作用在二進位制檔案和作用在資料夾下。
1. 當作用在二進位制檔案下作用和suid相似,只不過suid是把發起者臨時變為檔案的所有者,而sgid 是把程序的發起者變成源程式檔案的屬組。
比如 /bin/cat 檔案 所屬組為rootgroup ,使用者tom 發起/bin/cat 之後會切換成 rootgroup 中,享有的許可權為rootgroup 的許可權。
許可權設定:
增加sgid: chmod g+s filename
去除sgid: chmod g-s filename。
關於sgid 作用於二進位制檔案的情況這裡不在舉例。
2. 預設情況下,使用者建立檔案時,其屬組為此使用者所屬的主組。當sgid 作用在目錄下時,則對此目錄有寫許可權的使用者在此目錄中建立的檔案所屬的組為此目錄的屬組, 通常用於建立乙個協作目錄。
許可權設定:
增加sgid :chmod g+s dirname
去除sgid :chmod g-s dirname.
舉例:wang 使用者新建乙個叫 xiezuo 的資料夾,並執行
[[email protected]~]$chmod g+s,o+w xiezuo/ (g+s 是增加sgid, o+w 是增加其他使用者的寫許可權,否則其他使用者沒法在該資料夾下床架檔案啦!),之後看看到 資料夾的的屬組變成rws了,如圖:
此時另外乙個使用者yys ,屬組也是yys 進入到 使用者wang 的 xiezuo 目錄下建立檔案 xiezuo-yys 會發現檔案的屬組變成 wang了!(預設情況下使用者建立的時候會屬於使用者所屬組的!)
預設情況下使用者可以刪除具有寫許可權的目錄中的任何檔案,無論該檔案的許可權或擁有權。如果在目錄設定sticky 位,只有檔案的所有者或root**可以刪除該檔案。sticky 位 是作用在資料夾的,設定在檔案上無意義。
許可權設定:
命令:chmod o+t dirname 增加資料夾的sticky許可權
chmod o-t dirname 除去資料夾的sticky許可權
例如: [[email protected]~]$chmod o+t xiezuo/ (增加資料夾xiezuo的 sticky 許可權)
普通使用者yys 進入 xiezuo 目錄下,發現即使裡面的檔案 xiezuo-wang
是 可讀寫執行 也照樣不能刪除,但是是可以讀可寫入內容的!
Linux檔案特殊許可權
linux中檔案除了r w x這三個讀 寫 執行的許可權還有特殊許可權 s t suid許可權 當s這個標誌出現在檔案所有者的x許可權上時 如 rwsr xr x 則被稱為set uid,簡稱suid許可權。suid限制 1 suid許可權僅對二進位制程式 可執行程式 有效。2 執行者對於該程式需要...
Linux檔案特殊許可權
檔案特殊許可權set uid set gid sticky bit 1 set uid 該許可權針對二進位制可執行檔案,使檔案在執行階段具有檔案所有者的許可權。比如 passwd具有該許可權 chmod u s filename filename必須是二進位制檔案 2 set gid 改許可權針對目...
Linux檔案特殊許可權
suid sgid sbit 先用ls l命令看一下下面幾個檔案或目錄的資訊 rwsr xr x.1 root root 25980 2月 22 2012 usr bin passwd rwx s x.1 root slocate 35612 8月 24 2010 usr bin locate dr...