chattr: Maksimal fil- / mappebeskyttelse i Linux ved attributter eller flagg

Vel ... ikke alt kan være spill, det er ikke min intensjon å bare publisere innlegg som snakker om spill 😉 ... Jeg er ikke en bruker som spiller mye, hjemme overlater jeg det til kjæresten min (som nå er hekta på Sims 4), det motiverer meg mer til å publisere flere tekniske artikler, om kommandoer eller tips i terminalen.

I Linux har vi noen tillatelser som absolutt løser nesten ethvert problem, kan vi bestemme hvilken bruker eller gruppe brukere som har tilgang til en bestemt ressurs, mappe, tjeneste. Imidlertid er det tider når tillatelser ikke er akkurat det vi trenger, ettersom det er situasjoner når vi ønsker at selv root ikke skal kunne utføre en bestemt handling.

Anta at vi har en mappe eller fil som vi ikke ønsker å bli slettet, la oss gå ... verken av brukeren vår eller av en annen på datamaskinen (ehm ... kjæresten min for eksempel haha), eller ikke engang root kan slette det, hvordan oppnår du dette? ... tillatelsene vil ikke hjelpe oss fordi root er den jævla mesteren, han kan slette hva som helst, så det er der fil- eller mappeegenskapene kommer inn.

chattr + i

Anta at vi vil beskytte en fil slik at den ikke kan slettes, det er: passord.txt , posisjonen din er (for eksempel) $ HOME / passwords.txt

For å etablere et skrivebeskyttet attributt (det vil si ingen modifikasjon og ingen sletting) ville det være:

sudo chattr +i $HOME/passwords.txt

Som du kan se, trenger vi administrasjonstillatelser for parameteren + i, som forresten, + i betyr at filen vil være uforanderlig, du vet, den kan ikke slettes, den kan ikke endres på noen måte.

Deretter kan du prøve å slette filen, til og med ved hjelp av sudo ... du vil se at du ikke vil være i stand til, her er et skjermbilde:

chattr_1

For å liste opp eller se attributtene som en fil har, kan vi bruke kommandoen lsattr, for eksempel:

lsattr passwords.txt

For å fjerne beskyttelsen i stedet for å bruke +i vi bruker -i og voila 😉

chattr + a

Som vi nettopp har sett tillater + i-parameteren oss å beskytte den fullstendig, men det har vært tider da jeg trenger en bestemt fil for å kunne endres, MEN uten å endre originalinnholdet. For eksempel har jeg en liste, og jeg vil at nye linjer og informasjon skal legges til ved hjelp av ekko, men uten å endre de forrige, for dette:

sudo chattr +a $HOME/passwords.txt

Når dette er gjort, la oss prøve å skrive noe nytt til filen:

echo "Prueba" > $HOME/passwords.txt

Du vil merke at du får en feil ... men hvis vi legger til innhold i stedet for å erstatte (ved hjelp av >> og ikke>):

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

Her kan vi.

Slutten!

Jeg vet at noen er kunnskapsrike når de ser at selv med root ikke kan slette / modifisere, kan en fil sjekke attributtene ... men hei! ... Hvor mange ganger at du merker noe slikt, slutter du å tenke på attributter? ... Jeg sier dette fordi vi generelt bare synes at harddisken eller dens sektor er korrupt, eller at systemet rett og slett ble gal 😀

Vel, det er ikke mye mer å legge til ... Jeg tror jeg bruker dette fra +i for å stoppe nedlastingen av noe som kjæresten min laster ned ... ¬_¬ ... ehm ... ville hun ikke last ned sims 4 gratis? ... Jeg tror jeg vil lære deg en ting om lisenser og at de ikke skal krenkes

Greetings!


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   opphøre sa

    Interessant å vite om dette verktøyet, hva om det gir meg litt nysgjerrighet, på en måte ville det ikke være noe som ligner på bittillatelser? Dvs setuid, setgid og klebrig bit? Hvis ikke, hvorfor? Oo

    PS: Jeg mistet antall ganger du sier kjæresten min i denne artikkelen hahaha

    1.    Hugo sa

      Dette er også litt, uforanderlighetsbiten, og den er designet slik at ingen kan endre eller slette filen den gjelder for (ikke engang rot). Jeg bruker den for eksempel til å skrivebeskytte konfigurasjonsfiler, noe som er spesielt nyttig i distribusjoner som Zentyal (det er en mye raskere måte å tilpasse konfigurasjonen på enn å redigere eller lage maler).

      Ved å kombinere denne kommandoen med chown, chmod og setfacl, kan interessante ting oppnås.

      FreeBSD har noe lignende, som jeg også bruker til min pfSense.

    2.    John sa

      Hahaha det er en kjent fase.
      http://www.xkcd.
      com / 684 /

  2.   niandekuera sa

    [Dr. Bolivar Trask] $ sudo chattr + i * .human

  3.   Tesla sa

    Veldig god ordre. Jeg kjente henne ikke.

    Det kan være veldig nyttig hvis vi deler en PC eller hvis vi har et bestemt dokument som vi jobber med som vi ikke vil slette for hele verden.

    Takk og vennlig hilsen!

  4.   Luis sa

    Veldig interessant.

    Kan noe lignende gjøres slik at ROOT ikke får tilgang til en bestemt mappe på hjemmesiden vår?

    1.    Tesla sa

      I følge artikkelen, med denne kommandoen, kan ikke engang root få tilgang til filen. Jeg antar at det samme gjelder mapper, siden i Linux er mapper også filer, ikke sant?

  5.   Joaquin sa

    For et sammentreff. I helgen prøvde jeg å slette en rotpartisjon og klarte ikke å slette en fil fra / boot-katalogen. Ved å søke fant jeg attributtene, jeg kjente ærlig talt ikke dem, og nå forstår jeg at problemet med tillatelser og attributter i en fil er veldig stort. Dette er en av de viktige kommandoene vi må vite, sammen med "chmod" og "chown".

  6.   aguatemala sa

    Dette er ekstremt nyttig, spesielt hvis vi for eksempel vil endre standard DNS for vår respektive ISP, og det er da vi må endre /etc/resolv.conf filen og for å gjøre dette må vi gjøre chattr -i / etc / resolv.conf, modifiser IP-ene som vises for de som er gratis og / eller gratis DNS (for eksempel de for OpenDNS 208.67.222.222 og 208.67.220.220 eller de fra Google 8.8.8.8 og 8.8.4.4) og etter å ha endret filen på nytt chattr + i /etc/resolv.conf slik at filen ikke blir endret når maskinen starter
    Flott artikkel ... og forresten, kjæresten din er som min kone, like avhengig av spill, hahahahaha

  7.   rawBasic sa

    Klart 'jævel-mesteren' er kjæresten din i denne situasjonen. xD