linux中檔案的特殊許可權

2021-10-02 19:54:10 字數 2283 閱讀 6706

1.sticky 粘製位

只針對目錄有效,當乙個目錄上有sticky許可權時,這個目錄中的檔案只能被檔案的所有者刪除

設定方式:

chmod o+t direcotry

chmod 1777 direcotry

chmod 1*** direcotry

(1)先在超級使用者下建立乙個目錄 mkdir /westos1

然後設定監控命令j監控改目錄以及改目錄下的檔案:

watch -n 1 「ls -ld /westos1 ; ls -l /westos1」

並且在超級使用者下設定滿許可權 chmod 777 /westos1

(2)在超級使用者下建立兩個普通使用者linux1 linux2

分別切換到兩個普通使用者下建立檔案file1 file2

useradd linux1

useradd linux2

su - linux1

touch /westos1/file1

exit

su - linux2

touch /westos1/file2

exit

(3)linux1使用者可以刪除linux2使用者建立的檔案file2,這樣做很不安全

怎樣解決這個問題?我們可以設定特殊許可權t

su - linux1

rm -fr /westos1/file2

在超級使用者模式下給westos1這個目錄增加t許可權

chmod o+t /westos1

給westos1目錄加上t許可權以後,linux2使用者就不能刪除linux1使用者建立的file1檔案了

su - linux2

rm -fr /westos1/file1

2.sgid 強制位

設定方式:

chmod g+s file|dir

chmod 2*** file|dir

對目錄:當目錄上有sgid許可權時任何人在此目錄中建立的檔案都屬於目錄的所有組

(1)首先在超級使用者下建立乙個目錄

並且對這個目錄進行監控

mkdir /westos2

watch -n 1 「ls -ld /westos2 ; ls -l /westos2」

檢視這個目錄的許可權:

ls -ld /westos2

(3)在超級使用者下建立乙個新使用者,並且將新建目錄的使用者組變為剛剛新建的使用者

然後在改目錄下建立新的檔案,發現此檔案的使用者組仍然為超級使用者,

並不是剛剛 新建的那個使用者

useradd linux3

chgrp linux3 /westos2

touch /westos2/file3

(4) 為了使在目錄中建立的檔案都屬於目錄的使用者組,需要在目錄上加上s許可權

由此可見,當給目錄加上s許可權時,目錄的所有組許可權會出現s,此時建立的檔案的所有組為目錄的所有組。

對檔案:只針對二進位制可執行檔案,當檔案上有s許可權時任何人執行此檔案產生的程序都屬於檔案的所有組

chmod g+s /westos2

touch /westos2/file4

ls -ld /westos2

先監控二進位制檔案的程序:

ps -ax -o user,group,comm | grep watch

ls -l /bin/watch

檢視該二進位制檔案的許可權:

ls -l /bin/watch

(3)以rootls -l /bin/watch

身份啟動乙個程序,這個程序的所有人和所有組均為root

然後將改檔案的所有組改為linux3,發現並沒有改變,仍為toot

/bin/watch -n 1 date

chgrp linux3 /bin/watch

給二進位製文進加上s許可權,重新開啟乙個新的程序

chmod g+s /bin/watch

3.suid 冒險位

作用:只針對二進位制可執行檔案,當檔案上有suid許可權時任何人執行這個檔案中程式產生的程序都屬於檔案的所有人

設定方式:

chmod u+s file

chmod 4*** file

(1)監控二進位制檔案的程序:

ps -ax -o user,group,comm | grep watch

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...