Kdo je Root? Zakaj obstaja korenina?


Ste se kdaj vprašali, zakaj v Linuxu obstaja poseben račun z imenom root ? Ali veste, katere so najboljše prakse za uporabo tega računa? Ali poznate scenarije, kjer ga je treba uporabiti, in tiste, kjer ga ni? Če ste na eno ali več teh vprašanj odgovorili z "da", nadaljujte z branjem.

V tej objavi bomo podali referenco z informacijami o korenskem računu, ki ga želite imeti pri roki.

Kaj je root?

Za začetek ne pozabimo, da je bila hierarhija imenikov v Unixu podobnih operacijskih sistemih zasnovana kot drevesna struktura. Izhodišče je poseben imenik, ki ga predstavlja poševnica (/) z vsemi drugimi imeniki, ki se od nje najprej odcepijo. Ker je to analogno dejanskemu drevesu, se / imenuje korenski imenik.

Na naslednji sliki vidimo rezultate:

$ tree -d / | less

ki ponazarja analogijo med / in root drevesa.

Čeprav razlogi za poimenovanje korenskega računa niso povsem jasni, je to verjetno posledica dejstva, da je root edini račun, ki ima dovoljenja za pisanje znotraj /.

Poleg tega ima root dostop do vseh datotek in ukazov v katerem koli Unixu podobnem operacijskem sistemu, zato ga pogosto imenujejo super uporabnik.

V stranski opombi se korenskega imenika (/) ne sme zamenjati z /root , ki je domači imenik korenskega uporabnika. Dejansko je /root podimenik /.

Dostop do korenskih dovoljenj

Ko govorimo o korenskih (ali super uporabniških) privilegijih, se sklicujemo na dovoljenja, ki jih ima tak račun v sistemu. Ti privilegiji vključujejo (vendar niso omejeni na) možnost spreminjanja sistema in dodeljevanja drugih uporabnikov določenih dovoljenj za dostop do njegovih virov.

Nepremišljena uporaba te moči lahko v najboljšem primeru povzroči sistemsko korupcijo in v najslabšem popolno okvaro. Zato so naslednje smernice sprejete kot najboljše prakse pri dostopu do privilegijev korenskega računa:

Sprva uporabite korenski račun za zagon visudo. Uporabite ta ukaz za urejanje/etc/sudoers, da podelite minimalne privilegije, ki jih določeni račun (npr. Nadzornik) potrebuje.

To lahko vključuje na primer možnost spreminjanja (usermod) uporabniških računov - in nič drugega.

Če se pomaknete naprej, se prijavite kot nadzornik in uporabite sudo za izvajanje nalog upravljanja uporabnikov. Opazili boste, da poskus izvajanja drugih nalog, ki zahtevajo dovoljenja super uporabnika (na primer odstranjevanje paketov), ne bi smel uspeti.

Po potrebi ponovite zgornja dva koraka in po končanem ukazu za izhod se takoj vrnite v svoj privilegiran račun.

Na tej točki se morate vprašati, ali še katera opravila, ki se pojavljajo periodično, potrebujejo privilegije super uporabnika? V tem primeru odobrite potrebna dovoljenja v/etc/sudoers bodisi za dani račun ali skupino in se še naprej izogibajte uporabi korenskega računa, kolikor je to mogoče.

Ta objava je lahko referenca za pravilno uporabo korenskega računa v Unixu podobnem operacijskem sistemu. Lahko ga dodate med zaznamke in vrnete tolikokrat, kolikor želite!

Kot vedno nam pošljite opombo s spodnjim obrazcem za komentar, če imate kakršna koli vprašanja ali predloge glede tega članka. Veselimo se vaših odzivov!