特殊權(quán)限
1.suid (set uid)
在使用命令的過程中,如果我們?yōu)槟硞€(gè)命令添加了suid,則無論是什么用戶,在使用該命令時(shí),都會(huì)以屬主的身份來暫時(shí)的使用該命令來運(yùn)行該命令,便于完成相應(yīng)命令所對(duì)應(yīng)的的操作.
示例:對(duì)/usr/bin/passwd添加一個(gè)SUID
1)通過使用chmod u+s 來為該文件添加suid
通過使用chmod u-s可對(duì)該文件的suid進(jìn)行去除
2)suid==4000,通過數(shù)字的形式對(duì)該文件添加suid,如chmod 4755 /usr/bin/passwd
在去除該文件的suid時(shí)可使用chmod 755來進(jìn)行更改
通過添加suid的方式可以讓所有用戶在使用一些本身沒有權(quán)限的命令時(shí)臨時(shí)的切換用戶身份為該命令的所屬主來對(duì)該命令進(jìn)行使用,便于完成操作.
suid優(yōu)點(diǎn):可以讓一些普通用戶完成一些其本身并不能通過自己身份完成的操作,以此來方便使用.
suid缺點(diǎn):如果為rm命令所在的文件添加了suid,那么任何用戶都可以刪除系統(tǒng)的任何資源.
圖中可以看出,進(jìn)程能夠以何種身份去查看一個(gè)文件,取決與運(yùn)行這個(gè)進(jìn)程的用戶,對(duì)該文件有沒有權(quán)限
沒有對(duì)cat命令添加suid時(shí)
添加了suid以后
2.sgid(set gid)
將目錄設(shè)置為sgid后孝扛,如果在往該目錄下創(chuàng)建文件款票,都將與該目的所屬組保持一致.
示例:創(chuàng)建一個(gè)組兩個(gè)用戶,使兩個(gè)用戶同時(shí)都屬于這個(gè)組,創(chuàng)建一個(gè)目錄并將這個(gè)目錄的所屬組更改為這個(gè)組
為這個(gè)目錄添加一個(gè)GID為2777,使在該目錄下所創(chuàng)建的文件的所屬組都是devops,并且這個(gè)組中的用戶分別創(chuàng)建一個(gè)文件
使用張三用戶查看李四建立的文件并對(duì)其刪除
使用李四用戶刪除張三建立的文件
PS:使用sgid可以使得多個(gè)用戶之間共享一個(gè)目錄的所有文件變得簡(jiǎn)單,但同時(shí)也產(chǎn)生了一定的風(fēng)險(xiǎn),同組的用戶不僅可以查看其他人的文件還可以對(duì)其他用戶的文件進(jìn)行刪除修改
3.sbit
如果一個(gè)目錄設(shè)定了粘滯位, 那么誰都可以在該目錄下創(chuàng)建文件,. 刪除文件只能是有誰建的文件由誰刪除, 除此以外 root 和/tmp/的所屬主都能 刪除該目錄下的額內(nèi)容.
示例:對(duì)/tmp目錄設(shè)置粘滯位,使得所有用戶都可以往該目錄下寫東西,但只有創(chuàng)建文件的屬主才可以刪除文件,除此之外只有/tmp的所屬主和root也能刪除,其他用戶可以查看別的用戶的文件但不能對(duì)文件進(jìn)行刪除
設(shè)定粘滯位的方法:
1)chmod o+t
圖中可以看出可使用chmod o-t對(duì)粘滯位進(jìn)行去除
2)chmod 1000
圖中可以看出可通過chmod 777對(duì)粘滯位進(jìn)行去除
示例:使用張三用戶和李四用戶分在/tmp目錄下創(chuàng)建一個(gè)文件編輯并保存
1)用張三用戶去查看/tmp目錄下李四的文件并嘗試刪除李四創(chuàng)建的文件,對(duì)李四的文件進(jìn)行編輯保存
2)用李四用戶查看張三的文件并對(duì)其進(jìn)行刪除修改
3)root用戶查看張三跟李四的文件,并刪除
總結(jié):
當(dāng)給/tmp這個(gè)目錄設(shè)置了粘滯位后所有用戶可以往該目錄中寫入文件,也可以查看他人文件,但不能刪除他人文件以及修改他人文件.但root用戶可以隨意刪除其他用戶的文件.
權(quán)限屬性chattr lsattr
參數(shù):
-a #只能追加,無其他操作
-i #鎖定文件,不能刪除,不能追加,不能移動(dòng)
示例一:希望任何人都不能創(chuàng)建用戶
利用chattr +i對(duì)/etc/passwd文件進(jìn)行鎖定,不能刪除也不能怎家用戶
利用chattr -i對(duì)/etc/passwd文件進(jìn)行解鎖
示例二:日志文件掘宪,希望能往里面追加內(nèi)容潜叛,但不允許刪除
進(jìn)程掩碼umask
默認(rèn)權(quán)限 umask是用來控制默認(rèn)創(chuàng)建文件或目錄的權(quán)限
umask設(shè)定為022,表示要減去的權(quán)限
目錄 777 -022 =755
文件 666 -022 =644
1.umask 設(shè)定為奇數(shù) 偶數(shù) 對(duì)文件和目錄有什么影響?
文件: 如果umask出現(xiàn)了奇數(shù), 要在奇數(shù)位+1
目錄: 對(duì)目錄毫無影響
PS:umask number 臨時(shí) (當(dāng)前bash窗口有效,會(huì)隨著bash的關(guān)閉一起結(jié)束)
vim /etc/profile /etc/login.defs #如果修改則都為永久.
PS: umask 是了解項(xiàng), 一般不需要調(diào)整,默認(rèn)就是安全的權(quán)限.