Linux chattrキーのシステムファイルをロック


私たちはchattrを通じてファイルをロックして変更できないか削除できない場合、chattrの+i数を使用します.これはext 2およびext 3ファイルシステムで有効であるが、reiserfsファイルシステムでは何の効果もない.
8パターン:
a:ファイルまたはディレクトリを追加の用途のみに使用します.
b:ファイルまたはディレクトリの最終アクセス時間は更新されません.
c:ファイルまたはディレクトリを圧縮して保存します.
d:ファイルまたはディレクトリを傾倒操作から除外する.
i:ファイルやディレクトリを任意に変更してはいけません.
s:機密性ファイルまたはディレクトリを削除します.
S:ファイルまたはディレクトリを即時に更新します.
u:予防以外の削除.
構文:
chattr[-RV][-v][+/-/=][ファイルまたはディレクトリ...]
パラメータ:
-R再帰処理は、指定されたディレクトリの下にあるすべてのファイルおよびサブディレクトリを一括処理する.
-vファイルまたはディレクトリのバージョンを設定します.
-V命令実行手順を表示します.
+ファイルまたはディレクトリのこのプロパティを開きます.
-ファイルまたはディレクトリのこの属性を閉じます.
=ファイルまたはディレクトリの属性を指定します.
  
コマンドの例:
[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起動の重要なファイル
例:
ロック:
[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

ロック解除:
[root@localhost ~]# chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab

注意:不正な使い方はchattr-iを使用してロックを解除することもできます.chattrを別の名前に変えることができます.そうすれば見つかりません.次のように
chattr名を変更するには:
[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 ~]#

ロックの有無を確認するには、次の手順に従います.
[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