5 chattr skipanir til að gera mikilvægar skrár UMBREYTanlegar (óbreytanlegar) í Linux


chattr (Change Attribute) er Linux skipanalínuforrit sem er notað til að stilla/afstilla ákveðna eiginleika í skrá í Linux kerfi til að tryggja að mikilvægar skrár og möppur verði eytt fyrir slysni eða breytt, jafnvel þó að þú sért skráður inn sem rót notandi.

Í innfæddum Linux skráarkerfum, þ.e. ext2, ext3, ext4, btrfs, o.s.frv. Maður getur ekki eytt eða breytt skrá/möppu þegar eiginleikar eru settir með chattr skipuninni, jafnvel þó að maður hafi fullar heimildir á því.

Þetta er mjög gagnlegt til að stilla eiginleika í kerfisskrám eins og passwd og shadow skrám þar sem upplýsingar notandans eru.

# chattr [operator] [flags] [filename]

Eftirfarandi er listi yfir algenga eiginleika og tengda fána sem hægt er að stilla/afstilla með chattr skipuninni.

  1. Ef skrá er opnuð með „A“ eigindinni stillt er tímaskrá hennar ekki uppfærð.
  2. Ef skrá er breytt með „S“ eigindinni eru breytingarnar uppfærslur samstillt á disknum.
  3. Skrá er stillt með 'a' eigind, aðeins hægt að opna í append ham til að skrifa.
  4. Skrá er stillt með 'i' eigind, ekki hægt að breyta (óbreytanleg). Þýðir ekkert endurnefna, engin táknræn hlekkur, engin framkvæmd, engin skrifanleg, aðeins ofurnotandi getur afstillt eiginleikann.
  5. Skrá með „j“ eigindinni er stillt, allar upplýsingar hennar eru uppfærðar í ext3 dagbókina áður en þær eru uppfærðar í sjálfa skrána.
  6. Skrá er stillt með „t“ eigind, engin samruna.
  7. Skrá með eigindinni 'd', mun ekki lengur nota til öryggisafrits þegar dumpferlið er keyrt.
  8. Þegar skrá hefur „u“ eigind er eytt, eru gögn hennar vistuð. Þetta gerir notandanum kleift að biðja um afturköllun þess.

  1. + : Bætir eigindinni við núverandi eiginleika skráanna.
  2. : Fjarlægir eigindina fyrir núverandi eigind skráanna.
  3. = : Haltu núverandi eiginleikum sem skrárnar hafa.

Hér ætlum við að sýna nokkur af chattr skipunardæmunum til að stilla/afstilla eiginleika í skrá og möppur.

1. Hvernig á að bæta við eiginleikum á skrám til að tryggja gegn eyðingu

Til kynningar höfum við notað möppuna demo og skrána important_file.conf í sömu röð. Áður en þú setur upp eiginleika, vertu viss um að ganga úr skugga um að núverandi skrár séu með einhverja eiginleika sem eru stilltir með „ls -l“ skipuninni. Sástu niðurstöðurnar, sem stendur er engin eigind stillt.

 ls -l
total 0
drwxr-xr-x. 2 root root 6 Aug 31 18:02 demo
-rwxrwxrwx. 1 root root 0 Aug 31 17:42 important_file.conf

Til að stilla eiginleika notum við + táknið og til að afvirkja notum við táknið með chattr skipuninni. Svo skulum við stilla óbreytanlegan bita á skrárnar með +i fánum til að koma í veg fyrir að einhver eyði skrá, jafnvel rótnotandi hefur ekki leyfi til að eyða henni.

 chattr +i demo/
 chattr +i important_file.conf

Athugið: Óbreytanlegi bitinn +i getur aðeins verið stilltur af ofurnotanda (þ.e. rót) notanda eða notandi með sudo réttindi getur stillt.

Eftir að hafa stillt óbreytanlegan bita skulum við staðfesta eiginleikann með skipuninni 'lsattr'.

 lsattr
----i----------- ./demo
----i----------- ./important_file.conf

Reyndi nú að eyða kröftuglega, endurnefna eða breyta heimildunum, en það mun ekki leyfa segir „Aðgerð ekki leyfð“.

 rm -rf demo/
rm: cannot remove âdemo/â: Operation not permitted
 mv demo/ demo_alter
mv: cannot move âdemo/â to âdemo_alterâ: Operation not permitted
 chmod 755 important_file.conf
chmod: changing permissions of âimportant_file.confâ: Operation not permitted

2. Hvernig á að afsetja eiginleika á skrám

Í dæminu hér að ofan höfum við séð hvernig á að stilla eigind til að tryggja og koma í veg fyrir að skrár verði eytt fyrir slysni, hér í þessu dæmi munum við sjá hvernig á að endurstilla (afstilla eigind) heimildir og leyfa að gera skrár breytanlegar eða breyta með - ég flaggi.

 chattr -i demo/ important_file.conf

Eftir að hafa endurstillt heimildir skaltu staðfesta óbreytanlega stöðu skráa með „lsattr“ skipuninni.

 lsattr
---------------- ./demo
---------------- ./important_file.conf

Þú sérð í ofangreindum niðurstöðum að „-i“ fáninn fjarlægður, það þýðir að þú getur örugglega fjarlægt alla skrána og möppuna sem eru í tecmint möppunni.

 rm -rf *

 ls -l
total 0

3. Hvernig á að tryggja /etc/passwd og /etc/shadow skrár

Með því að stilla óbreytanleg eigind á skrár /etc/passwd eða /etc/shadow tryggir það þær fyrir óviljandi fjarlægingu eða átt við og einnig mun það slökkva á stofnun notandareiknings.

 chattr +i /etc/passwd
 chattr +i /etc/shadow

Reyndu nú að búa til nýjan kerfisnotanda, þú munt fá villuskilaboð sem segja 'getur ekki opnað /etc/passwd'.

 useradd tecmint
useradd: cannot open /etc/passwd

Þannig geturðu stillt óbreytanlegar heimildir á mikilvægum skrám eða kerfisstillingarskrám til að koma í veg fyrir eyðingu.

4. Bættu við gögnum án þess að breyta núverandi gögnum á skrá

Segjum sem svo að þú viljir aðeins leyfa öllum að bæta við gögnum í skrá án þess að breyta eða breyta þegar slegnum gögnum, þú getur notað 'a' eigindina sem hér segir.

 chattr +a example.txt

 lsattr example.txt
-----a---------- example.txt

Eftir að þú hefur stillt append mode er hægt að opna skrána til að skrifa gögn eingöngu í append mode. Þú getur afstillt append eigindina sem hér segir.

 chattr -a example.txt

Reyndu nú að skipta út efni sem þegar er til í skránni example.txt, þú munt fá villu sem segir 'Aðgerð ekki leyfð'.

 echo "replace contain on file." > example.txt
-bash: example.txt: Operation not permitted

Reyndu nú að bæta við nýju efni við núverandi skrá example.txt og staðfestu það.

 echo "replace contain on file." >> example.txt
 cat example.txt
Here is the example to test 'a' attribute mean append only.
replace contain on file.

5. Hvernig á að tryggja möppur

Til að tryggja alla möppuna og skrár hennar, notum við „-R“ (endurkvæmt) rofa með „+i“ fána ásamt fullri slóð möppunnar.

 chattr -R +i myfolder

Eftir að hafa stillt endurkvæma eiginleika skaltu reyna að eyða möppunni og skrám hennar.

 rm -rf myfolder/
rm: cannot remove 'myfolder/': Operation not permitted

Til að afvirkja leyfi notum við sama „-R“ (endurkvæmt) rofa með „-i“ fána ásamt fullri slóð möppunnar.

 chattr -R -i myfolder

Það er það! Til að vita meira um chattr skipanaeiginleika, fána og valkosti, notaðu mannasíðurnar.