1.特殊位
suid(4) sgid(2) sticky(1)
suid和sgid 針對二進制文件程序時,具備臨時提權的功能
sgid 針對目錄,該目錄下新建的文件具有繼承目錄屬組的特徵
sticky 針對目錄設置,設置後該目錄的內容只有root和目錄屬主(目錄的所有者)、文件的所有者能刪除
設置sticky # chmod o+t /home/dir (注意t只能加在o其他人上)
(1)例題
在root的家目錄下新建一個文件,用普通用戶登錄 用cat命令查看這個文件,結果普通用戶是沒有權限查看的
用命令 #chmod u+s /usr/bin/cat
再登錄普通用戶,用cat這個命令便可以查看root家目錄下的新建的文件
注意: suid (+s的命令)只針對二進制命令的文件 如:cat命令--->/usr/bin/cat
(2)對文件/文件夾設置高級權限
chmod 4777 file
其中4 代表 有suid 無sgid 無sticky
(3)配置sgid (只針對目錄和關於組)---->新建文件繼承目錄的屬組
新建一個目錄:#mkdir /home/hr1
新建一個目錄 : # groupadd hr1
更改一個目錄的屬組 # chgrp hr /home/hr1
設置繼承sgid #chmod g+s /home/hr1
ll -d /home/hr1/
drwxr-sr-x. 2 root hr1 4096 Dec 5 16:03 /home/hr1/
再在目錄/home/hr1下新建文件,文件的屬組進行繼承,所以新建文件的屬組是hr1而不是root
# touch /home/hr1/file1
# ll /home/hr1/
-rw-r--r--. 1 root hr1 0 Dec 5 16:03 file1
2.文件屬性 :chattr
常用於鎖定某個文件,拒絕修改(設置的權限針對所有用戶,包括root)
用法: #chattr +a file1 --->只能追加
#chattr +i file2 --->不能更改,重命名,刪除
#chattr +A file3 --->不能更改訪問時間
3.進程掩碼umask
新建的文件/文件夾的默認權限會受到umask的影響 (文件夾的默認權限755 文件的默認權限644---比文件夾少x 執行權限)(1)查看當前用戶的umask權限值
# umask
(2)修改shell umask值爲000 ----------->只起臨時作用
#umask 000
改後: 新建文件的默認權限爲666
新建目錄的默認權限爲777
(3)通過umask決定新建用戶對自己家目錄的權限
在/etc/login.defs下更改umask 新建一個用戶,用戶對自己家目錄的權限會受到umask的影響
如果UMASK改爲777時 ,用戶對自己家目錄的權限是366-------不清楚爲什麼??
示例:通過umask決定新建用戶HOME目錄的權限
[root@bijz ~]# vim /etc/login.defs------- ( /UMASK------->搜索umask)
UMASK 077
[root@bijz ~]# useradd gougou
[root@bijz ~]# ll -d /home/gougou/
drwx------. 4 gougou gougou 4096 3月 11 19:50 /home/gougou/
註釋:(gougou用戶對自己家目錄/home/gougou/的權限是700------>因爲777-077=700)
[root@bijz~]# vim /etc/login.defs
UMASK 000
[root@bijz ~]# useradd yangyang
[root@bijz ~]# ll -d /home/yangyang/
drwxrwxrwx. 4 yangyang yangyang 4096 3月 11 19:53 /home/yangyang/