- Rad sustava dozvola na temelju vlasnika, grupe i ostalih korisnika.
- Korištenje naredbi chmod i chown za promjenu pristupa datotekama i vlasništva.
- Temeljne razlike između dozvola primijenjenih na datoteke i direktorije.
- Primjena oktalne i simboličke notacije za učinkovitu administraciju.
Ako ste se upustili u svijet Linuxa, primijetili ste da ovaj sustav ne komplicira kada je u pitanju sigurnost. Za razliku od drugih operativnih sustava gdje svatko može dirati gotovo sve, Linux koristi višekorisnički sigurnosni model Vrlo robustan. To znači da svakoj datoteci i mapi dodijeljena su stroga pravila koja određuju tko može čitati, pisati ili izvršavati sadržaj, sprječavajući ljudsku pogrešku ili zlonamjerni proces da sruše sustav.
Razumijevanje kako ovaj sustav funkcionira ključno je za svakog administratora ili znatiželjnog korisnika. Nije stvar samo u pokretanju nasumičnih naredbi, već u razumijevanju da su dopuštenja ključna. osnova pouzdanosti sustavaU ovom članku ćemo ga raščlaniti od samih osnova do Linux tajne i naredbe napredniji kako više nikada ne biste vidjeli strašnu poruku "Dostupnost odbijena" i znali točno kako sigurno otključati bilo koju datoteku.
Kako analizirati trenutna dopuštenja
Prije nego što išta promijenite, prvo što trebate učiniti jest razumjeti što se događa. Najčešći alat je naredba Kada ga pokrenete, vidjet ćete redak s nizom znakova poput -rw-r--r--Prvi lik nam govori priroda elementa: crtica za normalne datoteke, "d" za direktorije i "l" za simboličke poveznice. Ostatak niza podijeljen je u tri bloka od po tri znaka.
Ako trebate ići korak dalje i želite vidjeti pune metapodatke, naredba To je vaš najbolji saveznik. Prikazat će vam informacije u puno detaljnijem formatu, uključujući broj inode i simboličke i oktalne prikaze, što vam omogućuje da dobijete točnu rendgensku snimku dotične datoteke.
Prekid lanca dozvola
Niz od deset znakova koji vidimo prilikom popisivanja datoteka nije slučajan. Prva tri znaka nakon vrste datoteke odgovaraju vlasnik-korisniktrojica koja slijede nakon grupa i posljednja tri do svi ostali (ostalo). Slova koja ćete pronaći su "r" (čitanje), "w" (pisanje) i "x" (izvršavanje). Ako vidite crticu, to znači da nije odobreno određeno dopuštenje.
Ključno je razumjeti da ova dopuštenja ne funkcioniraju na isti način za datoteku kao što funkcioniraju za mapu. Na primjer, dopuštenje za čitanje datoteke omogućuje vam da vidite njezin tekst, ali za direktorij omogućuje vam da... navedite datoteke koje sadržiPisanje u datoteku omogućuje vam izmjenu njezinog sadržaja, dok pisanje u mapu omogućuje vam... brisanje ili stvaranje novih datoteka unutar nje.
Budite oprezni s dozvolama za izvršavanje, jer tu mnogi ljudi griješe. U datoteci vam omogućuje pokretanje skripte ili programa. Međutim, u direktoriju, dozvole za izvršavanje su... strogo je potrebno unijeti pomoću naredbe Bez njega, iako možete popisati sadržaj, nećete moći pristupiti unutarnjim mapama ili raditi s datotekama unutra.
Brojevni sustav: oktalni zapis
Za one koji preferiraju brzinu, Linux dopušta korištenje brojeva umjesto slova. Svako dopuštenje ima dodijeljenu vrijednost: čitanje vrijedi 4, pisanje 2, a izvršavanje 1. Zbrajanjem ovih vrijednosti za svaku grupu dobivamo broj od 0 do 7. Na primjer, ako želite da vlasnik ima punu kontrolu (4+2+1=7), grupa samo čita i izvršava (4+1=5), a svi ostali također samo čitaju i izvršavaju (4+1=5), rezultat je poznati dozvola 755.
Postoje kombinacije koje ćete viđati ponavljane iznova i iznova. 644 je standard za dokumenti i konfiguracijegdje piše samo vlasnik. 600 je zlatno pravilo za SSH ključevi i osjetljivi podacijer sprječava bilo koga drugog na sustavu da pogleda. S druge strane, 777 daje puni pristup svima; iako se čini kao brzo rješenje za bilo koji problem s dozvolama, to je izuzetno opasno i treba ih izbjegavati pod svaku cijenu u stvarnim okruženjima.
Promjena pristupa pomoću chmod-a
Za promjenu ovih pravila koristimo naredbu (promjena načina rada). Postoje dva načina korištenja: numerički i simbolički. Numerički način je izravan: I to je to. Ali simbolična dopuštenja su fleksibilnija jer vam omogućuju dodavanje ili uklanjanje dopuštenja bez mijenjanja postojećih, korištenjem operatora poput +, - o =.
U simboličkom načinu, koristimo slova kako bismo identificirali na koga utječemo: za korisnika, za grupu, za druge i za sve. Ako želite da skripta bude izvršna za sve, sve što vam treba je Ako želite biti selektivniji i dati dopuštenje samo vlasniku, koristili biste čime se održava puno zrnatija kontrola o sigurnosti.
Ako naiđete na složenu strukturu mapa i želite primijeniti promjene na sav sadržaj, trebali biste koristiti rekurzivna opcija -ROvo će primijeniti promjenu na odabrani direktorij i sve njegove podmape i datoteke. Međutim, budite vrlo oprezni pri tome, jer se može pojaviti greška s Može ostaviti vaš sustav u ranjivom stanju ili blokirati pristup kritičnim uslugama.
Promjena vlasništva i posebne dozvole
Ponekad problem nije u tome koja dopuštenja datoteka ima, već tko je vlasnik. Za to koristimo (promjena vlasnika) i (promjena grupe). Promjena vlasnika obično zahtijeva privilegije superkorisnika (sudo), budući da je to osjetljiva operacija koja bi korisniku mogla omogućiti lažno predstavljanje kao drugi korisnik na datotečnom sustavu.
Za naprednije slučajeve dostupne su posebne dozvole. SUID (Postavi korisnički ID) Zbog toga se program pokreće s dozvolama vlasnika datoteke, a ne osobe koja ga pokreće; naredba Koristi ga za promjenu lozinke na zaštićenim datotekama. SGID (Postavi ID grupe) Izvrsno je za dijeljene mape jer nove datoteke nasljeđuju grupu mapa. Konačno, Ljepljivi komadić Sprječava korisnike da brišu datoteke drugih korisnika u dijeljenim mapama, kao što je u direktoriju /tmp.
Tajanstvena umask i rješavanje problema
Možda se pitate zašto nove datoteke već dolaze s određenim dozvolama. To je zbog Umask je maska koja smanjuje dopuštenja s osnovnih vrijednosti (666 za datoteke i 777 za mape). Na primjer, umask od 0022 rezultirat će time da datoteke imaju dopuštenja od 644, a mape dopuštenja od 755. Ovu vrijednost možete prilagoditi u konfiguracijskoj datoteci ljuske tako da Vaše datoteke su kreirane s odgovarajućom sigurnošću..
Kada naiđete na grešku "Dostupnost odbijena", ne očajavajte. Ako se to događa tijekom izvršavanja skripte, vjerojatno vam nedostaje bit za izvršavanje. Ako ne možete izbrisati datoteku koja vam pripada, zapamtite da Trebate dopuštenje za pisanje u nadređenoj mapine nužno u samoj datoteci. A ako se SSH žali da su vam ključevi "previše otvoreni", to je zato što imate previše dopusna dopuštenja i morate ih odmah smanjiti na 600 da bi im sustav vjerovao.
Savladavanje upravljanja pristupom uključuje poznavanje navigacije između oktalne i simboličke notacije, razumijevanje hijerarhije korisnika, grupa i drugih te promišljenu primjenu alata kao što su , y uvijek dajući prioritet načelu najmanjih privilegija kako bi sustav bio stabilan i zaštićen od neovlaštenog pristupa.
Strastveni pisac o svijetu bajtova i tehnologije općenito. Volim dijeliti svoje znanje pisanjem, a to je ono što ću učiniti na ovom blogu, pokazati vam sve najzanimljivije stvari o gadgetima, softveru, hardveru, tehnološkim trendovima i još mnogo toga. Moj cilj je pomoći vam da se snađete u digitalnom svijetu na jednostavan i zabavan način.
