Tja ... allt kan inte vara spel, det är inte min avsikt att bara publicera inlägg som talar om spel 😉 ... Jag är inte en användare som spelar mycket, hemma lämnar jag det till min flickvän (som nu är ansluten Sims 4), det är därför det motiverar mig mer att publicera mer tekniska artiklar, om kommandon eller tips i terminalen.
I Linux har vi några behörigheter som säkert löser nästan alla problem kan vi avgöra vilken användare eller grupp av användare som har tillgång till en viss resurs, mapp, tjänst. Det finns dock tillfällen när behörigheter inte är exakt vad vi behöver, eftersom det finns situationer där vi vill att även root inte ska kunna utföra en viss åtgärd.
Antag att vi har en mapp eller fil som vi inte vill ta bort, låt oss gå ... varken av vår användare eller av en annan på datorn (ehm ... min flickvän till exempel haha), eller inte ens root kan ta bort det, hur man uppnår detta? ... behörigheterna hjälper oss inte eftersom root är jävla master, han kommer att kunna ta bort vad som helst, så det är där fil- eller mappattributen kommer in.
chattr + i
Antag att vi vill skydda en fil så att den inte kan raderas, det är: lösenord.txt , din plats är (till exempel) $ HOME / passwords.txt
För att ställa in ett skrivskyddat attribut (det vill säga ingen ändring och ingen radering) skulle det vara:
sudo chattr +i $HOME/passwords.txt
Som du kan se behöver vi administratörsbehörigheter för + i-parametern, som förresten + i betyder att filen kommer att vara oföränderlig, du vet, den kan inte raderas, den kan inte ändras på något sätt.
Sedan kan du försöka ta bort filen, även med sudo ... du kommer att se att du inte kommer att kunna, här är en skärmdump:
För att lista eller se attributen som en fil har kan vi använda kommandot lsattr, till exempel:
lsattr passwords.txt
Sedan för att ta bort skyddet istället för att använda +i vi använder -i och voila 😉
chattr + a
Som vi just har sett låter + i-parametern oss skydda den helt, men det har förekommit tillfällen då jag behöver en viss fil för att kunna ändras, MEN utan att ändra dess ursprungliga innehåll. Till exempel har jag en lista och jag vill att nya rader och information ska läggas till med eko, men utan att ändra de tidigare, för detta:
sudo chattr +a $HOME/passwords.txt
Med detta gjort, låt oss försöka skriva något nytt till filen:
echo "Prueba" > $HOME/passwords.txt
Du kommer att märka att ett fel visas ... men om vi lägger till innehåll istället för att ersätta (med >> och inte>):
echo "Prueba" >> $HOME/passwords.txt
Här kan vi.
Slutet!
Jag vet att någon kunnig när de ser att även med root kan radera / modifiera en fil kan kontrollera dess attribut ... men hej! ... Hur många gånger som du märker något liknande stannar du för att tänka på attribut? ... Jag säger detta för att vi i allmänhet helt enkelt tycker att hårddisken eller dess sektor är korrupt, eller att systemet helt enkelt blev galet 😀
Det finns inte mycket mer att lägga till ... Jag tror att jag kommer att använda det här från +i för att stoppa nedladdningen av något som min flickvän laddar ner ... ¬_¬ ... ehm ... ville hon inte ladda ner sims 4 fri? ... Jag tror att jag ska lära dig en sak eller två om licenser och att de inte ska brytas 😀
Hälsningar!
Intressant att veta om det här verktyget, vad händer om det orsakar mig nyfikenhet, på ett sätt skulle det inte vara något som liknar bitbehörigheter? Dvs setuid, setgid och klibbig bit? Om inte, varför? Oo
PS: Jag tappade antalet gånger du säger min flickvän i den här artikeln hahaha
För detta är också lite, immutabilitetsbiten, och den är utformad så att ingen kan ändra eller ta bort den fil som den gäller (inte ens root). Jag använder den till exempel för att skriva skydda konfigurationsfiler, vilket är särskilt användbart i distributioner som Zentyal (det är ett mycket snabbare sätt att anpassa konfigurationen än genom att redigera eller skapa mallar).
Genom att kombinera detta kommando med chown, chmod och setfacl kan intressanta saker åstadkommas.
FreeBSD har något liknande, som jag också använder för min pfSense.
Hahaha det är en känd fas.
http://www.xkcd.
com / 684 /
[Dr. Bolivar Trask] $ sudo chattr + i * .human
Mycket bra ordning. Jag kände henne inte.
Det kan vara mycket användbart om vi delar en dator eller om vi har ett visst dokument som vi arbetar med som vi inte vill ta bort för världen.
Tack och hälsningar!
Mycket intressant.
Kan något liknande göras så att ROOT inte kan komma åt en viss mapp på vår hemsida?
Enligt artikeln kan inte ens root komma åt filen med det här kommandot. Jag antar att samma sak gäller mappar, eftersom mappar i Linux också är filer, eller hur?
Vilket sammanträffande. I helgen försökte jag ta bort en rotpartition och kunde inte ta bort en fil från / boot-katalogen. Ser jag, jag hittade attributen, jag visste ärligt talat inte dem och nu förstår jag att frågan om behörigheter och attribut i en fil är mycket stor. Detta är en av dessa viktiga kommandon som vi måste känna till, tillsammans med "chmod" och "chown".
Detta är extremt användbart, särskilt om vi till exempel vill ändra standard-DNS för vår respektive ISP, och det är då vi måste ändra /etc/resolv.conf-filen och för att göra detta måste vi göra chattr -i / etc / resolv.conf, modifiera de IP-adresser som visas för de av våra gratis och / eller gratis DNS (som de för OpenDNS 208.67.222.222 och 208.67.220.220 eller för Google 8.8.8.8 och 8.8.4.4) och efter att ha gör om chattr + i /etc/resolv.conf så att filen inte ändras när maskinen startar.
Bra artikel ... och förresten är din flickvän som min fru, lika beroende av spel, hahahahaha
Uppenbarligen är "jävla mästaren" din flickvän i den här situationen. xD