我們通過chattr來鎖定乙個檔案為不可修改或不可刪除時,要用到chattr的+i數;這在ext2和ext3檔案系統是有效的,但在reiserfs檔案系統是沒有任何效果的;
8種模式:
a:讓檔案或目錄僅供附加用途。
b:不更新檔案或目錄的最後訪問時間。
c:將檔案或目錄壓縮後存放。
d:將檔案或目錄排除在傾倒操作之外。
i:不得任意更動檔案或目錄。
s:保密性刪除檔案或目錄。
s:即時更新檔案或目錄。
u:預防以外刪除。
語法:
chattr [-rv][-v《版本編號》][+/-/=《屬性》][檔案或目錄...]
引數:
-r 遞迴處理,將指定目錄下的所有檔案及子目錄一併處理。
-v《版本編號》 設定檔案或目錄版本。
-v 顯示指令執行過程。
+《屬性》 開啟檔案或目錄的該項屬性。
-《屬性》 關閉檔案或目錄的該項屬性。
=《屬性》 指定檔案或目錄的該項屬性。
命令示例:1
2
3
4
5
6
7
8
9
[root@w zdw]
# chattr +a test.sh
[root@w zdw]
# rm -f test.sh
rm
: cannot remove `
test
.sh': operation not permitted
[root@w zdw]
# echo 11 >>test.sh
[root@w zdw]
# echo 11 >>test.sh
[root@w zdw]
# echo 11 >test.sh
-
bash
:
test
.sh: operation not permitted
[root@w zdw]
# lsattr test.sh
-----a-------e-
test
.sh
鎖定關鍵的系統檔案可以增加系統的安全性,使用chattr命令來鎖定,下面是幾個需要鎖定的檔案:
chattr +i /etc/passwd 使用者檔案
chattr +i /etc/shadow 使用者密碼檔案
chattr +i /etc/group 使用者組檔案
chattr +i /etc/gshadow 主密碼檔案
chattr +i /etc/inittab 開機啟動的重要檔案
示例:
加鎖:1
2
3
4
5
[root@localhost ~]
# chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
[root@localhost ~]
# rm -f /etc/passwd
rm
: cannot remove
'/etc/passwd'
: operation not permitted
[root@localhost ~]
# useradd test1
useradd
: cannot
open
/etc/passwd
解鎖:1
[root@localhost ~]
# chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
注:非法用法也可以使用chattr -i來解鎖。我們可以把chattr換成別的名稱,這樣就找不到了。如下
修改chattr名稱:
1
2
3
4
5
6
7
8
[root@localhost ~]
# which chattr 找到chattr在哪
/usr/bin/chattr
[root@localhost ~]
# mv /usr/bin/chattr /usr/bin/zdw 把chattr換成zdw
[root@localhost ~]
# chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
-
bash
:
/usr/bin/chattr
: 2‰é£a–– 用chattr解鎖不成功
[root@localhost ~]
# zdw -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
[root@localhost ~]
# useradd test1 用zdw解鎖成功,新增新使用者成功
[root@localhost ~]
#
檢視是否加鎖:1
2
3
4
5
6
[root@localhost ~]
# zdw +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
[root@localhost ~]
# lsattr /etc/passwd 檢視是否加鎖用lsattr命令
----i-----------
/etc/passwd
如果有i就說明加鎖了
[root@localhost ~]
# zdw -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
[root@localhost ~]
# lsattr /etc/passwd
----------------
/etc/passwd
沒有i就說明沒有加鎖
Linux chattr 檔案保護
linux chattr 檔案保護 chattr命令的用法 chattr rv v version mode files 注 最關鍵的是在 mode 部分,mode 部分是由 和 asacddiijsttu 這些字元組合的,這部分是用來控制檔案的屬性。引數 各引數選項中常用到的是a和i。a選項強制只...
Linux chattr 命令詳解
a 即atime,告訴系統不要修改對這個檔案的最後訪問時間。s 即sync,一旦應用程式對這個檔案執行了寫操作,使系統立刻把修改的結果寫到磁碟。b 不更新檔案或目錄的最後訪問時間。c 將檔案或目錄壓縮後存放。d 當dump程式執行時,該檔案或目錄不會被dump備份。d 檢查壓縮檔案中的錯誤。i 即i...
Linux系統鎖定關鍵檔案
1.密碼 賬號檔案 chattr i etc passwd etc group etc shadow etc gshadow etc inittab 加鎖 chattr i etc passwd 檔案不能刪除,不能更改,不能移動 檢視加鎖 lsattr etc passwd 檔案加了乙個引數 i 表...