„chattr“: maksimali failų / aplankų apsauga „Linux“ sistemoje naudojant atributus ar žymes

Na ... ne viskas gali būti žaidimai, aš neketinu skelbti tik įrašų, kuriuose kalbama apie žaidimus 😉 ... Aš nesu daug žaidžiantis vartotojas, namuose tai palieku savo merginai (kuris dabar užsikabinęs Sims 4), todėl mane labiau motyvuoja paskelbti daugiau techninių straipsnių apie komandas ar patarimus terminale.

„Linux“ sistemoje turime keletą leidimai kurie tikrai išsprendžia beveik visas problemas, galime nustatyti, kuris vartotojas ar vartotojų grupė turi prieigą prie tam tikro šaltinio, aplanko, paslaugos. Tačiau yra atvejų, kai leidimai nėra tiksliai tai, ko mums reikia, nes yra situacijų, kuriose norime, kad net šaknis negalėtų atlikti tam tikro veiksmo.

Tarkime, kad turime aplanką ar failą, kurio nenorime ištrinti, eikime ... nei mūsų vartotojas, nei kitas kompiuterio vartotojas (ehm ... pavyzdžiui mano mergina haha), ar net root negali jo ištrinti, kaip tai pasiekti? ... Leidimai mums neveiks, nes šaknis yra sušikti-pagrindinis, jis gali ištrinti bet ką, taigi čia yra failo ar aplanko atributai.

chattr + i

Tarkime, kad norime apsaugoti failą, kad jo nebūtų galima ištrinti, jis yra: slaptažodžiai.txt , jūsų vieta yra (pavyzdžiui) $ HOME / passwords.txt

Norėdami nustatyti tik skaitomą atributą (tai yra, nereikia keisti ir neištrinti), tai bus:

sudo chattr +i $HOME/passwords.txt

Kaip matote, mums reikalingi parametro + i administravimo leidimai, kurie, beje, + i reiškia, kad failas bus nekintamas, žinote, jo negalima ištrinti, jis jokiu būdu negali pasikeisti.

Tada galite pabandyti ištrinti failą, net naudodami sudo ... pamatysite, kad negalėsite, čia yra ekrano kopija:

chattr_1

Norėdami išvardyti ar pamatyti failo atributus, galime naudoti komandą lsattrPavyzdžiui:

lsattr passwords.txt

Tada pašalinkite apsaugą, o ne naudokite +i mes naudojame -i ir voila 😉

chattr + a

Kaip ką tik matėme, + i parametras leidžia mums jį visiškai apsaugoti, tačiau buvo atvejų, kai man reikia tam tikro failo, kad galėčiau jį modifikuoti, BET nekeisdamas jo pirminio turinio. Pvz., Turiu sąrašą ir noriu, kad naujos eilutės ir informacija būtų pridėta naudojant aidą, tačiau nekeičiant ankstesnių:

sudo chattr +a $HOME/passwords.txt

Tai atlikę, pabandykime į failą įrašyti ką nors naujo:

echo "Prueba" > $HOME/passwords.txt

Pastebėsite, kad gaunate klaidą ... tačiau, jei mes pridėsime turinį, o ne pakeisime (naudodami >> ir ne>):

echo "Prueba" >> $HOME/passwords.txt

Čia mes galime.

Pabaiga!

Aš žinau, kad kažkas, žinantis, matydamas, kad net su root gali ištrinti / modifikuoti failą, gali patikrinti jo atributus ... bet, ei! ... Kiek kartų pastebėjote kažką panašaus, nustojate galvoti apie atributus? ... Aš tai sakau, nes paprastai mes tiesiog manome, kad HDD ar jo sektorius yra sugadintas arba kad sistema tiesiog išprotėjo 😀

Na, nėra ką daugiau pridėti ... Manau, kad tai naudosiu iš +i sustabdyti mano merginos atsisiunčiamo daikto atsisiuntimą ... ¬_¬ ... ehm ... ar ji nenorėjo atsisiųsti sims 4 Laisvas? ... Manau, kad išmokysiu jus apie du dalykus apie licencijas ir jų neturėtume pažeisti 😀

Sveiki atvykę!


10 komentarai, palikite savo

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   nustoti sakė

    Įdomu žinoti apie šį įrankį, o jei jis man sukelia tam tikrą smalsumą, savotiškai tai nebūtų kažkas panašaus į bitų leidimus? T. y. Setuid, setgid ir lipnus antgalis? Jei ne, kodėl? Oo

    PS: Aš praradau skaičių kartų, kai sakote, kad mano mergina šiame straipsnyje hahaha

    1.    Hugo sakė

      Tai taip pat yra šiek tiek nekintamumo bitai, ir jis sukurtas taip, kad niekas negalėtų modifikuoti ar ištrinti failo, kuriam jis taikomas (net ne root). Aš naudoju jį, pavyzdžiui, konfigūracijos failams apsaugoti nuo įrašymo, o tai ypač naudinga tokiuose platinimuose kaip „Zentyal“ (tai daug greitesnis būdas pritaikyti konfigūraciją nei redaguojant ar kuriant šablonus).

      Sujungus šią komandą su chown, chmod ir setfacl, galima pasiekti įdomių dalykų.

      „FreeBSD“ turi kažką panašaus, kurį taip pat naudoju savo „pfSense“.

    2.    Jonas sakė

      Hahaha, tai žinomas etapas.
      http://www.xkcd.
      com / 684 /

  2.   Niandekuera sakė

    [Dr. Bolivaras Traskas] $ sudo chattr + i * .žmogus

  3.   Tesla sakė

    Labai gera tvarka. Aš jos nepažinojau.

    Tai gali būti labai naudinga, jei dalinamės asmeniniu kompiuteriu arba turime tam tikrą dokumentą, kurį dirbame ir kurio nenorite ištrinti visame pasaulyje.

    Ačiū ir linkėjimai!

  4.   luis sakė

    Labai įdomu.

    Ar galima būtų padaryti kažką panašaus, kad ROOT negalėtų pasiekti tam tikro aplanko mūsų pagrindiniame puslapyje?

    1.    Tesla sakė

      Pagal straipsnį, naudodamiesi šia komanda, net root negali pasiekti failo. Manau, tas pats pasakytina ir apie aplankus, nes „Linux“ aplankuose taip pat yra failų, tiesa?

  5.   Joaquinas sakė

    Koks sutapimas. Šį savaitgalį bandžiau ištrinti šakninį skaidinį ir negalėjau ištrinti failo iš / boot katalogo. Ieškodamas radau atributų, nuoširdžiai jų nežinojau ir dabar suprantu, kad leidimų ir atributų faile klausimas yra labai didelis. Tai yra viena iš pagrindinių komandų, kurią turime žinoti kartu su „chmod“ ir „chown“.

  6.   Aguatemala sakė

    Tai nepaprastai naudinga, ypač jei, pavyzdžiui, norime pakeisti numatytąjį savo interneto paslaugų teikėjo DNS, būtent tada turime modifikuoti failą /etc/resolv.conf ir, norėdami tai padaryti, turime atlikti „chattr -i“ / etc / resolv.conf, modifikuokite IP, kurie rodomi mūsų laisvo ir (arba) nemokamo DNS (pvz., „OpenDNS 208.67.222.222“ ir „208.67.220.220“ arba „Google 8.8.8.8“ ir 8.8.4.4), ir po to, kai turite pakeitė failą perdaryti chattr + i /etc/resolv.conf taip, kad failas nebūtų modifikuotas, kai mašina paleidžiama.
    Puikus straipsnis ... ir, beje, tavo mergina yra panaši į mano žmoną, kaip ir priklausoma nuo žaidimų, hahahahaha

  7.   rawBasic sakė

    Akivaizdu, kad šioje situacijoje tavo mergina yra „sušikti meistras“. xD