Ricerca nel sito web

Chi è Root? Perché esiste la radice?


Ti sei mai chiesto perché in Linux esiste un account speciale chiamato root? Conosci quali sono le migliori pratiche consigliate per utilizzare questo account? Siete a conoscenza degli scenari in cui deve essere utilizzato e di quelli in cui no? Se hai risposto "sì" a una o più di queste domande, continua a leggere.

In questo post forniremo un riferimento con le informazioni sull'account root che vorrai tenere a portata di mano.

Cos'è la radice?

Per cominciare, teniamo presente che la gerarchia delle directory nei sistemi operativi di tipo Unix è stata progettata come una struttura ad albero. Il punto di partenza è una directory speciale rappresentata da una barra (/) da cui inizialmente si diramano tutte le altre directory. Poiché questo è analogo a un vero e proprio albero, / è chiamata directory radice.

Nell'immagine seguente possiamo vedere l'output di:

tree -d / | less

che illustra l'analogia tra / e la root di un albero.

Sebbene le ragioni dietro la denominazione dell'account root non siano del tutto chiare, è probabile che sia dovuto al fatto che root è l'unico account ad avere i permessi di scrittura all'interno di / .

Inoltre, root ha accesso a tutti i file e comandi in qualsiasi sistema operativo simile a Unix e per questo motivo viene spesso definito superutente.

Nota a margine: la directory root (/) non deve essere confusa con /root, che è la directory home dell'utente root. In effetti, /root è una sottodirectory di /.

Ottenere l'accesso ai permessi di root

Quando parliamo di privilegi di root (o superutente), ci riferiamo ai permessi che tale account ha sul sistema. Questi privilegi includono (ma non sono limitati a) la capacità di modificare il sistema e di concedere ad altri utenti determinati permessi di accesso alle sue risorse.

L’uso sconsiderato di questo potere può portare, nella migliore delle ipotesi, alla corruzione del sistema e, nella peggiore, al fallimento totale. Ecco perché le seguenti linee guida sono accettate come migliori pratiche quando si tratta di accedere ai privilegi dell'account root:

Inizialmente, utilizza l'account root per eseguire visudo. Utilizza questo comando per modificare /etc/sudoers per garantire i privilegi minimi di superutente richiesti da un determinato account (ad esempio supervisore).

Ciò può includere, ad esempio, la possibilità di creare (adduser) e modificare (usermod) account utente e nient'altro.

D'ora in poi, accedi come supervisore e usa sudo per eseguire attività di gestione degli utenti. Noterai che il tentativo di eseguire altre attività che richiedono autorizzazioni di superutente (rimozione di pacchetti, ad esempio) dovrebbe fallire.

Ripeti i due passaggi precedenti ogni volta che è necessario e, una volta terminato, utilizza il comando esci per tornare immediatamente al tuo account non privilegiato.

A questo punto dovresti chiederti: ci sono altre attività che compaiono periodicamente che richiedono privilegi di superutente? In tal caso, concedi le autorizzazioni necessarie in /etc/sudoers per un determinato account o gruppo e continua a evitare, per quanto possibile, l'uso dell'account root.

Riepilogo

Questo post può servire come riferimento per il corretto utilizzo dell'account root in un sistema operativo Unix-like. Sentiti libero di aggiungerlo ai tuoi segnalibri e tornare tutte le volte che vuoi!

Come sempre, inviaci una nota utilizzando il modulo di commento qui sotto se hai domande o suggerimenti su questo articolo. Restiamo in attesa della vostra risposta!