chattr +i /sec/Classified
使文件不能被修改與刪除,對(duì)passwd、shadow、group、gshadow等重要文件可設(shè)置該屬性,-i移除屬性。
chattr +a /sec/Classified
使文件不能被修改與刪除,但可以追加內(nèi)容,對(duì)重要的日志文件可以設(shè)置該屬性,-a移除屬性。
lsattr /sec/Classified #顯示隱藏屬性
chattr +a 示例
1、SBIT(Sticky Bit):只對(duì)目錄有效,一個(gè)目錄如果有SBIT權(quán)限,那么該目錄下的文件,只有該文件的擁有者和root才能刪除,如/tmp目錄,它的權(quán)限是:
tmp目錄權(quán)限
t出現(xiàn)在了其他人的x權(quán)限位置,表示該目錄有SBIT權(quán)限。該目錄其他人具有rw權(quán)限,理論上該目錄下的文件任何人都可以刪除。但由于SBIT權(quán)限的存在,所以該目錄的文件只有擁有者和root才能刪除或移動(dòng)。以tmp目錄下的file1文件為例:
file1文件權(quán)限
file1文件的擁有者是sindy,那么該文件只能被root和sindy這兩個(gè)用戶刪除。
參考命令:
chmod o+t /share #為share目錄賦于SBIT權(quán)限,在該目錄下用戶只能刪除自己創(chuàng)建的文件
chmod o-t /share #取消SBIT權(quán)限
2、SUID(Set UID):只對(duì)二進(jìn)制文件有效,一個(gè)文件如果有SUID權(quán)限,那么其他人在執(zhí)行該文件時(shí),可以臨時(shí)獲取到該文件的擁有者權(quán)限。以/usr/bin/passwd文件為例:
passwd文件權(quán)限
s出現(xiàn)在了擁有者的x權(quán)限位置,表示該文件有SUID權(quán)限,且其他人對(duì)該文件有x權(quán)限。由于SUID權(quán)限的存在,所以其他人在執(zhí)行passwd命令時(shí),會(huì)臨時(shí)獲取到root(擁有者是root)權(quán)限,進(jìn)而可以對(duì)/etc/shadow文件進(jìn)行寫入操作。這也是為什么普通用戶也能用passwd命令修改自己密碼的緣故。
參考命令:
chmod u+s /script/setdns #為文件setdns文件賦于SUID權(quán)限
chmod u-s /script/setdns #取消SUID權(quán)限
3、SGID(Set GID):對(duì)二進(jìn)制文件和目錄都有效,一個(gè)文件如果有SGID權(quán)限,那么其他人在執(zhí)行該文件時(shí),可以臨時(shí)獲取到該文件所屬組的權(quán)限。一個(gè)目錄如果有SGID權(quán)限,那么在該目錄下創(chuàng)建的文件、目錄會(huì)繼承父目錄的所屬組信息。以根下的一個(gè)work目錄為例:
work目錄權(quán)限
s出現(xiàn)在了目錄所屬組的x權(quán)限位置,表示該目錄有SGID權(quán)限。由于SGID權(quán)限的存在,任何用戶在該目錄下創(chuàng)建的文件、目錄的所屬組都會(huì)是sindy組。
參考命令:
chmod g+s /work #為work目錄賦于SGID權(quán)限
chmod g-s /work #取消SGID權(quán)限