Ko je Root? Zašto root postoji?


Jeste li se ikada zapitali zašto postoji poseban račun pod nazivom root u Linuxu? Znate li koje su preporučene najbolje prakse za korištenje ovog računa? Jeste li svjesni scenarija u kojima se mora koristiti i onih u kojima se ne koristi? Ako ste odgovorili “da ” na jedno ili više ovih pitanja, nastavite čitati.

U ovom postu ćemo dati referencu sa informacijama o root nalogu koje ćete želeti da imate pri ruci.

Šta je root?

Za početak, imajmo na umu da je hijerarhija direktorija u operativnim sistemima sličnim Unixu dizajnirana kao struktura nalik stablu. Početna tačka je poseban direktorijum predstavljen kosom crtom (/) sa svim ostalim direktorijumima koji se u početku granaju od njega. Pošto je ovo analogno stvarnom stablu, / se naziva korijenski direktorij.

Na sljedećoj slici možemo vidjeti rezultat:

tree -d / | less

koji ilustruje analogiju između / i korena drveta.

Iako razlozi za imenovanje root naloga nisu sasvim jasni, to je vjerovatno zbog činjenice da je root jedini račun koji ima dozvole za pisanje unutar / .

Osim toga, root ima pristup svim datotekama i komandama u bilo kojem operativnom sistemu sličnom Unixu i iz tog razloga se često naziva superkorisnikom.

Uz napomenu, korijenski direktorij (/) ne smije se miješati sa /root, koji je početni direktorij root korisnika. U stvari, /root je poddirektorij /.

Dobivanje pristupa root dozvolama

Kada govorimo o root (ili superuser) privilegijama, mislimo na dozvole koje takav nalog ima na sistemu. Ove privilegije uključuju (ali nisu ograničene na) mogućnost modifikacije sistema i davanja drugim korisnicima određenih dozvola za pristup njegovim resursima.

Bezobzirna upotreba ove moći može dovesti do oštećenja sistema u najboljem slučaju i potpunog kvara u najgorem. Zbog toga su sljedeće smjernice prihvaćene kao najbolje prakse kada je u pitanju pristup privilegijama root naloga:

U početku koristite root nalog za pokretanje visudo. Koristite tu naredbu za uređivanje /etc/sudoers kako biste dodijelili minimalne privilegije superkorisnika koje su potrebne datom nalogu (npr. supervizoru).

Ovo može uključivati, na primjer, mogućnost kreiranja (adduser) i mjenjanja (usermod) korisničkih računa – i ništa drugo.

U nastavku, prijavite se kao supervizor i koristite sudo za obavljanje zadataka upravljanja korisnicima. Primijetit ćete da bi pokušaj izvođenja drugih zadataka koji zahtijevaju dozvole superkorisnika (uklanjanje paketa, na primjer) trebao biti neuspješan.

Ponovite gornja dva koraka kad god je potrebno, a kada završite, koristite naredbu exit da se odmah vratite na svoj neprivilegirani račun.

U ovom trenutku treba da se zapitate, da li se još neki zadaci pojavljuju na periodičnoj osnovi za koje su potrebne privilegije superkorisnika? Ako je tako, dodijelite potrebna dopuštenja u /etc/sudoers bilo za dati račun ili grupu, i nastavite izbjegavati korištenje root računa u najvećoj mogućoj mjeri.

Sažetak

Ovaj post može poslužiti kao referenca za pravilno korištenje root naloga u operativnom sistemu sličnom Unixu. Slobodno ga dodajte u svoje oznake i vratite koliko god puta želite!

Kao i uvijek, pošaljite nam poruku koristeći formular za komentare u nastavku ako imate bilo kakvih pitanja ili prijedloga u vezi sa ovim člankom. Radujemo se Vašem odgovoru!