5 Kmandi chattr biex Jagħmel Fajls Importanti IMMUTABILI (Ma Jinbidlux) fil-Linux
chattr (Bidla Attribut) hija utilità tal-Linux tal-linja tal-kmand li tintuża biex tissettja/tneħħi ċerti attributi għal fajl fis-sistema Linux biex tiżgura t-tħassir jew il-modifika aċċidentali ta' fajls u folders importanti, minkejja li tkun illoggjat bħala utent għerq.
Fis-sistemi tal-fajls indiġeni tal-Linux jiġifieri ext2, ext3, ext4, btrfs, eċċ. jappoġġja l-bnadar kollha, għalkemm il-bnadar kollha mhux se jappoġġjaw l-FS kollha mhux indiġeni. Wieħed ma jistax iħassar jew jimmodifika fajl/folder ladarba l-attributi huma settijiet bil-kmand chattr, minkejja li wieħed ikollu permessi sħaħ fuqu.
Dan huwa utli ħafna biex jiġu stabbiliti attributi fil-fajls tas-sistema bħal passwd u shadow files li fihom l-informazzjoni tal-utent.
# chattr [operator] [flags] [filename]
Dawn li ġejjin huma l-lista ta 'attributi komuni u bnadar assoċjati jistgħu jiġu ssettjati/issettjati bl-użu tal-kmand chattr.
- Jekk jiġi aċċessat fajl bl-attribut 'A' stabbilit, ir-rekord tal-ħin tiegħu ma jiġix aġġornat.
- Jekk fajl jiġi modifikat b'sett ta' attribut 'S', il-bidliet huma aġġornamenti sinkroniku fuq id-diska.
- Fajl huwa ssettjat bl-attribut 'a', jista' jinfetaħ biss fil-mod ta' append għall-kitba.
- Fajl huwa ssettjat bl-attribut 'i', ma jistax jiġi modifikat (immutabbli). Ifisser l-ebda tibdil ta' isem, l-ebda ħolqien ta' link simboliku, l-ebda eżekuzzjoni, l-ebda miktub, is-superuser biss jista' jitneħħa l-attribut.
- Fajl bl-attribut 'j' jiġi stabbilit, l-informazzjoni kollha tiegħu tiġi aġġornata għall-ġurnal ext3 qabel ma tiġi aġġornata għall-fajl innifsu.
- Fajl huwa ssettjat bl-attribut 't', l-ebda tail-merging.
- Fajl bl-attribut 'd', ma jkunx aktar kandidat għal backup meta jitmexxa l-proċess ta' dump.
- Meta fajl ikollu l-attribut 'u' jitħassar, id-dejta tiegħu tiġi ssejvjata. Dan jippermetti lill-utent jistaqsi għat-tneħħija tiegħu.
- + : Iżżid l-attribut ma' l-attribut eżistenti tal-fajls.
- – : Tneħħi l-attribut għall-attribut eżistenti tal-fajls.
- = : Żomm l-attributi eżistenti li għandhom il-fajls.
Hawnhekk, se nuru xi wħud mill-eżempji tal-kmand chattr biex issettja/tneħħi l-attributi għal fajl u folders.
1. Kif iżżid attributi fuq fajls biex tiżgura mit-tħassir
Għal skop ta’ dimostrazzjoni, użajna folder demo u fajl important_file.conf rispettivament. Qabel ma twaqqaf attributi, kun żgur li tivverifika li l-fajls eżistenti għandhom xi attributi stabbiliti bl-użu tal-kmand 'ls -l'. Rajt ir-riżultati, bħalissa l-ebda attribut mhu stabbilit.
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
Biex tissettja l-attribut, nużaw is-sinjal + u biex titneħħa uża s-sinjal – bil-kmand chattr. Allura, ejja nissettjaw bit immutabbli fuq il-fajls b'bnadar +i biex ma tħallix lil xi ħadd iħassar fajl, anki utent root m'għandux permess biex iħassarha.
chattr +i demo/ chattr +i important_file.conf
Nota: Il-bit immutabbli +i jista 'jiġi ssettjat biss minn utent superuser (jiġifieri root) jew utent bi privileġġi sudo jista' jissettja.
Wara li tissettja l-bit immutabbli, ejja nivverifikaw l-attribut bil-kmand 'lsattr'.
lsattr ----i----------- ./demo ----i----------- ./important_file.conf
Issa, ippruvajt tħassar bil-qawwa, semmi mill-ġdid jew tibdel il-permessi, iżda mhux se permess jgħid Operazzjoni mhux permessa.
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. Kif jitneħħa l-attribut fuq Fajls
Fl-eżempju ta 'hawn fuq, rajna kif nissettjaw l-attribut biex niżguraw u jipprevjenu fajls minn tħassir aċċidentali, hawnhekk f'dan l-eżempju, se naraw kif nissettjaw il-permessi (attribut mhux issettjat) u tippermetti li tagħmel fajls jinbidlu jew jinbidlu bl-użu - i bandiera.
chattr -i demo/ important_file.conf
Wara li tirrisettja l-permessi, ivverifika l-istatus immutabbli tal-fajls billi tuża l-kmand 'lsattr'.
lsattr ---------------- ./demo ---------------- ./important_file.conf
Fir-riżultati ta 'hawn fuq tara li l-bandiera '-i' titneħħa, dan ifisser li tista' tneħħi b'mod sikur il-fajl u l-folder kollha li jgħixu fil-folder tecmint.
rm -rf * ls -l total 0
3. Kif Tiżgura l-fajls /etc/passwd u /etc/shadow
L-issettjar ta' attribut immutabbli fuq fajls /etc/passwd jew /etc/shadow, jagħmilhom sikuri minn tneħħija aċċidentali jew tbagħbis u wkoll se tiddiżattiva l-ħolqien tal-kont tal-utent.
chattr +i /etc/passwd chattr +i /etc/shadow
Issa ipprova toħloq utent tas-sistema ġdid, ikollok messaġġ ta 'żball li jgħid 'ma tistax tiftaħ /etc/passwd'.
useradd tecmint useradd: cannot open /etc/passwd
B'dan il-mod tista 'tissettja permessi immutabbli fuq il-fajls importanti tiegħek jew il-fajls tal-konfigurazzjoni tas-sistema biex tevita milli jitħassru.
4. Ehmeż dejta mingħajr Immodifika dejta eżistenti fuq Fajl
Ejja ngħidu, trid biss tippermetti lil kulħadd biex jehmeż id-dejta fuq fajl mingħajr ma tbiddel jew timmodifika d-dejta diġà mdaħħla, tista 'tuża l-attribut 'a' kif ġej.
chattr +a example.txt lsattr example.txt -----a---------- example.txt
Wara li tissettja l-modalità tehmeż, il-fajl jista 'jinfetaħ għall-kitba tad-dejta fil-modalità tehmeż biss. Tista' tneħħi l-attribut append kif ġej.
chattr -a example.txt
Issa ipprova tissostitwixxi kontenut diġà eżistenti fuq fajl example.txt, ikollok żball li tgħid 'Operazzjoni mhux permessa'.
echo "replace contain on file." > example.txt -bash: example.txt: Operation not permitted
Issa ipprova tehmeż kontenut ġdid fuq fajl eżistenti example.txt u vverifikah.
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. Kif Sikura Direttorji
Biex niżguraw id-direttorju kollu u l-fajls tiegħu, nużaw '-R' (rikursivament) swiċċ bil-bandiera '+i' flimkien mal-mogħdija sħiħa tal-folder.
chattr -R +i myfolder
Wara li tissettja l-attribut rikorsiv, ipprova tħassar il-folder u l-fajls tiegħu.
rm -rf myfolder/ rm: cannot remove 'myfolder/': Operation not permitted
Biex tneħħi l-permess, nużaw l-istess swiċċ '-R' (rikursiv) bil-bandiera '-i' flimkien mal-mogħdija sħiħa tal-folder.
chattr -R -i myfolder
Dak hu! Biex tkun taf aktar dwar l-attributi tal-kmand chattr, il-bnadar u l-għażliet uża l-paġni man.