Zaradi narave sistemov Linux obstaja veliko omejitev in avtorizacijskih nastavitev za datoteke in imenike v smislu varnosti. Edini uporabnik z vsemi temi privilegiji je root uporabnik.

Zato med uporabo sistema, če smo uporabniki root, opozorilo pred nami ne bo a omejevalni mehanizem, v nekaterih primerih pa lahko spremembe, ki jih bomo naredili, povzročijo velike težave z sistem. Zato je poznavanje avtorizacij uporabnikov Linuxa zelo pomembno za vsakega uporabnika Linuxa.

Dejanja, ki jih lahko izvajajo uporabniki glede datotek in imenikov

Vsak uporabnik lahko deluje v okviru pooblastil, ki so mu dana. Obstajajo tri dejanja, ki jih lahko uporabniki izvedejo v zvezi z datotekami ali imeniki.

  • preberi (r): Gre za možnost ogleda seznama map in vsebine datoteke.
  • pisati (w): Gre za spreminjanje datoteke ali mape.
  • izvrši (x): Gre za zagon ciljne datoteke ali možnost dostopa do mape.

Če ste seznanjeni z ukaz chmod in dovoljenja za datoteko Linux, ste morda že slišali za ta tri dovoljenja.

Vnesite ls -l ukaz, da vidite, katera dovoljenja ima vaša trenutna datoteka.

Deli, ki jih vidimo kot drwxr-xr-x in -rw-r--r-- glejte dovoljenja za datoteke. Pismo d na začetku nekaterih izrazov označuje, da je ta izraz imenik. Če preostale dele razložimo ločeno, so deli, ločeni z - znak predstavlja uporabniško skupino s tem dovoljenjem.

Za boljše razumevanje jih razdelite v skupine po tri, brez črke d.

rwxr-xr-x = rwxr-xr-x

rw-r--r-- = rw-r--r--

Prvi niz črk določa dovoljenja lastnika datoteke, drugi dovoljenja skupine, zadnji nabor pa dovoljenja drugih uporabnikov.

V skladu s tem so dovoljenja v zgornjih datotekah:

  • r: privilegij branja
  • w: privilegij pisanja
  • x: izvršilni privilegij
  • rwx: uporabnik, ki je lastnik datoteke, lahko bere, piše, izvaja
  • r-x: drugi uporabniki lahko berejo, izvajajo, ne pa pišejo

Spreminjanje dovoljenj s chmod

Samo root, ki je najbolj pooblaščena oseba, lahko spremeni privilegij dostopa. Ta postopek spreminjanja je enostavno izvesti z chmod ukaz.

Parametri in pomen chmod ukazi so navedeni spodaj.

  • u: Lastnik datoteke ali imenika
  • g: Uporabniki v isti skupini kot lastnik datoteke ali imenika
  • o: Drugi uporabniki
  • a: Odprto za vse
  • =: Sinhronizacija avtorizacije
  • +: Dodaj pooblastilo
  • -: Izbris pooblastila

Zdaj, ko ste videli pomen parametrov, lahko zdaj razmislite o primeru operacije. Za to, ustvarite vzorčni imenik in sledite spodnjim korakom po vrstnem redu.

Uporabi ls -l ukaz za brskanje po dovoljenjih datotek v mapi, ki ste jo ustvarili. Pri tem pomislite, da je struktura dovoljenj vaših datotek naslednja.

ls -l
skupaj 4
1 korenkoren 0 apr 25 16:20primer.txt
1 korenkoren 0 apr 25 16:21ex_File
d 2 korenkoren 4096 apr 25 16:21ex_Folder
1 korenkoren 0 apr 25 16:20ex_Besedilo

Po tem dostopite do vseh datotek v mapi z uporabo * znak in pustite, da zapis (w) postane javna uporaba chmod +w * ukaz.

chmod +w *
ls -l
skupaj 4
--w-r-x 1 korenkoren 0 apr 25 16:20primer.txt
--w-r-x 1 korenkoren 0 apr 25 16:21ex_File
d-w-r-x 2 korenkoren 4096 apr 25 16:21ex_Folder
--w-r-x 1 korenkoren 0 apr 25 16:20ex_Besedilo

Zdaj poskusite dati pooblastilo za branje-pisanje-izvajanje (rwx) uporabnikom v skupini (g), dovoljenja za pisanje (w) uporabnikom (u) in dovoljenja za izvajanje (x) samo za druge uporabnike.

chmod g+rwx, u+w, o+x *
ls -l
skupaj 4
--w-rwx--x 1 korenkoren 0 apr 25 16:20primer.txt
--w-rwx--x 1 korenkoren 0 apr 25 16:21ex_File
d-w-rwx--x 2 korenkoren 4096 apr 25 16:21ex_Folder
--w-rwx--x 1 korenkoren 0 apr 25 16:20ex_Besedilo

In končno, lahko uporabite ukaz, kot je spodnji, da razveljavite avtorizacijo datotek na vaši lokaciji.

chmod a-rwx *
<Koda>ls -l
skupaj 4
1 korenkoren 0 apr 25 16:20primer.txt
1 korenkoren 0 apr 25 16:21ex_File
d 2 korenkoren 4096 apr 25 16:21ex_Folder
1 korenkoren 0 apr 25 16:20ex_Besedilo

Poleg teh uporab je mogoče postopke avtorizacije izraziti tudi s številčnimi izrazi, na katere ste verjetno že naleteli in jih uporabljali, ne da bi se tega zavedali.

Številke so določene za vsako avtorizacijo

Lastnik datoteke Uporabniki v isti skupini kot lastnik datoteke Drugi uporabniki
r 4 4 4
w 2 2 2
x 1 1 1

Predstavljajte si na primer, da želite dati vsa dovoljenja samo lastniku datoteke. Za to morate najprej zbrati številčne ekvivalente vzorcev avtorizacije. Z drugimi besedami, ker boste dali vsa dovoljenja, je r=4 + w=2 + x=1=skupno število 7.

To dovoljenje želite podeliti samo lastniku datoteke. Če želite to narediti, lahko nekoliko spremenite chmod rwx- ukaz, ki bi ga običajno uporabljali. Če uporabite ukaz, kot je chmod 700 datoteka, bo imel vse privilegije samo lastnik datoteke.

Da bi to bolje razumeli, si lahko omislite še en primer. Predstavljajte si, da ima lastnik datoteke vsa dovoljenja, tisti v javni skupini imajo dovoljenje za pisanje, drugi uporabniki pa dovoljenje za branje.

Enačbo r (4)+w (2)+x (1)=7 lahko uporabite za vse privilegije, ki jih ima lastnik datoteke.

Pooblastilo za pisanje, ki ga daste uporabnikom v skupni skupini z lastnikom datoteke, bo uporabljalo številko 2, ki je številčni ekvivalent znaka za pisanje (w). Pooblastilo za branje, ki ga boste dali drugim uporabnikom, bo uporabljalo številko 4, ki je številčni ekvivalent znaka za branje (r).

Kot je razbrati iz izhodnih podatkov, morajo številčni ekvivalenti opraviti želeno avtorizacijo.

Naj bodo vaše nastavitve avtorizacije veljavne v podimenikih z -R

Poleg tega, če želite, da dovoljenja, ki jih daste, začnejo veljati za ta imenik in njegove podmape, uporabite svoj ukaz z -R parameter.

Na primer, navedite pravice dostopa do mape z imenom "ex_Folder"na vaši lokaciji. Rezultat bo izhod, ki navaja, da niso bila najdena nobena pooblastila.

ls -l 
skupaj 4
1 korenkoren 0 apr 25 16:20primer.txt
-rwx-w-r-- 1 korenkoren 0 apr 25 16:21ex_File
d 2 korenkoren 4096 apr 25 16:21ex_Folder
1 korenkoren 0 apr 25 16:20ex_Besedilo

Nato pojdite v mapo z imenom "ex_Folder".

Nato se vrnite v nadrejeni imenik. Uporabi -R parameter in napišite ukaz, kot je chmod -R 422 ex_Folder tako da so dovoljenja za dostop do dodanih veljavna za vse poddatoteke.

Posledično so vse datoteke, vključno z vsemi datotekami in imeniki ter podmapami, pooblaščene na način, ki ustreza stavku 422.

Najboljša rešitev za nenamerno izbrisane datoteke: chattr

Ne glede na razlog, če obstajajo datoteke, ki se vam zdijo pomembne, jih je mogoče zaščititi, preden jih pomotoma izbrišete. Ukaz, ki daje to možnost zaščite, je chattr ukaz. The chattr ukaz ne ščiti le pred brisanjem, ampak se uporablja tudi za preprečevanje spreminjanja datoteke.

Lahko uporabite svoje lsattr ukaz za seznam takšnih datotek.

Poskusite zaščititi main.cpp datoteko, ki se pojavi tukaj z chattr +i main.cpp ukaz.

Kot je razvidno iz izhoda, obstaja a -jaz izjavo v razdelku z dovoljenji. Ta izjava je znak, da datoteke ni več mogoče urejati. Če želite to potrditi, lahko poskusite izbrisati to datoteko z ukazom, kot je rm -rf main.cpp.

rm-rfglavni.cpp
rm: ni mogoče odstraniti 'main.cpp': Delovanje ni dovoljeno

Če želite razveljaviti to operacijo in omogočiti urejanje datoteke, preprosto uporabite chattr -i main.cpp ukaz.

Privilegiji dostopa so pomembni za varnost datotečnega sistema

Pooblastilo dostopa predstavlja hrbtenico varnosti datotečnega sistema Linux. Zahvaljujoč dovoljenjem za dostop, ki se lahko dodelijo vsaki datoteki posebej, je mogoče doseči veliko bolj udobno upravljanje sistema.

Pravice dostopa na podlagi posameznega uporabnika so včasih lahko še bolj pomembne. Zato boste morda želeli pristopiti k projektom in datotekam v vašem sistemu z poznavanjem načinov avtorizacije, opisanih v tem članku.

Kako spremeniti dovoljenja za datoteke na namiznih računalnikih Linux

Preberite Naprej

DelitiTweetDelitiE-naslov

Povezane teme

  • Linux
  • Nadzor uporabniškega računa
  • Upravljanje datotek
  • Linux
  • terminal

O avtorju

Fatih Küçükkarakurt (2 objavljena članka)

Inženir in razvijalec programske opreme, ki je ljubitelj matematike in tehnologije. Od nekdaj je imel rad računalništvo, matematiko in fiziko. Razvil je projekte motorjev za igre, pa tudi strojno učenje, umetne nevronske mreže in knjižnice linearne algebre. Poleg tega še naprej dela na strojnem učenju in linearnih matrikah.

Več od Fatih Küçükkarakurt

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e-knjige in ekskluzivne ponudbe!

Kliknite tukaj, da se naročite