Come ottenere i privilegi di root su Ubuntu | Guida sicura ed efficiente al passaggio

1. Introduction

Su Ubuntu, alcune attività di gestione del sistema richiedono privilegi di root, che non sono accessibili agli utenti normali. L’account root è equivalente all'”account amministratore” del sistema e consente agli utenti di eseguire operazioni critiche come operazioni sul file system, installazione di pacchetti e modifiche di configurazione. Questo articolo spiega come passare all’utente root su Ubuntu e i punti chiave da considerare durante l’operazione.

年収訴求

2. Privilegi di root in Ubuntu e le loro caratteristiche

La politica di sicurezza di Ubuntu disabilita l’account root per impostazione predefinita per ridurre i rischi di sistema associati all’uso non necessario di root. Invece, Ubuntu concede privilegi di root temporanei agli utenti normali tramite il comando “sudo”.

2.1 Differenze tra utenti normali e utenti root

Gli utenti normali possono accedere solo alle proprie directory e a impostazioni di sistema limitate, mentre l’utente root ha il controllo illimitato sul sistema. Per questo motivo, i privilegi di root sono necessari per operazioni che coinvolgono file di sistema e permessi. Tuttavia, un uso scorretto dei privilegi di root può destabilizzare il sistema, quindi è fondamentale avere una conoscenza adeguata.

2.2 Privilegi di root temporanei con sudo

Su Ubuntu, invece di passare direttamente all’account root, è consigliato utilizzare il comando sudo per ottenere privilegi di root temporanei quando necessario. Le sezioni successive spiegano in dettaglio il suo utilizzo e le precauzioni.

3. Come passare temporaneamente a root

Quando sono necessari i privilegi di root su Ubuntu, è consigliabile concedere l’accesso root solo a comandi specifici anziché passare completamente all’utente root. Questo metodo riduce il rischio di operazioni accidentali, poiché il sistema torna ai privilegi normali al termine di un’attività. Di seguito spieghiamo l’uso passo‑passo del comando sudo.

3.1 Uso base del comando sudo

“sudo” sta per “substitute user do”, e consente agli utenti di modificare temporaneamente i propri privilegi. Anche gli utenti normali possono eseguire comandi specifici con privilegi di root usando sudo. Il comando si usa come segue:

$ sudo [command]

Ad esempio, per aggiornare i pacchetti, inserisci il comando seguente:

$ sudo apt update

Poiché questo comando richiede privilegi di root, usare sudo consente un’elevazione temporanea dei privilegi per eseguirlo.

3.2 Inserimento della password quando si usa sudo

La prima volta che usi sudo, ti verrà chiesto di inserire la password dell’utente corrente. Questo garantisce che sudo non sia liberamente accessibile a chiunque, migliorando la sicurezza. L’autenticazione rimane valida per un certo periodo, quindi non è necessario reinserire la password per ogni comando.

3.3 Periodo di validità temporaneo di sudo

Il periodo di timeout predefinito per i privilegi sudo su Ubuntu è di circa 15 minuti. Se non è necessario un accesso root prolungato, puoi revocare manualmente i privilegi eseguendo il comando sudo -k, che invalida immediatamente l’autenticazione, richiedendo nuovamente la password per il prossimo utilizzo di sudo.

4. Come passare a una shell root

Passare a una shell root consente agli utenti di continuare a operare come utente root, il che è utile per eseguire più operazioni amministrative. Su Ubuntu, è possibile utilizzare i comandi sudo -i o sudo su per passare alla shell root. Le sezioni seguenti spiegano l’uso e le caratteristiche di ciascun comando.

4.1 Passare a una shell root usando sudo -i

Il comando sudo -i passa a una shell root con un ambiente completamente inizializzato. Quando si utilizza questo comando, viene caricato il profilo dell’utente root e vengono applicate le variabili d’ambiente specifiche di root. Eseguire il comando seguente:

$ sudo -i

Dopo aver eseguito questo comando, l’ambiente root viene ereditato completamente, consentendo l’uso immediato delle variabili d’ambiente e dei percorsi configurati per root. Una volta completate le operazioni, utilizzare il comando exit per tornare al proprio account utente normale.

4.2 Passare a una shell root usando sudo su

Il comando sudo su è simile a sudo -i, ma presenta un comportamento leggermente diverso. Sebbene passi alla shell root, potrebbe non ereditare le variabili d’ambiente caricate al login. Ciò significa che le variabili d’ambiente dell’utente corrente rimangono attive durante l’operazione con privilegi di root.

$ sudo su

Usare sudo su mantiene la sessione esistente concedendo privilegi di root. È utile quando si desidera eseguire operazioni amministrative senza ereditare un nuovo ambiente root.

4.3 Passare senza ereditare le variabili d’ambiente (su -)

Se è necessario separarsi completamente dalle variabili d’ambiente dell’utente normale mentre si lavora come root, è consigliato utilizzare il comando su -. Questo comando effettua l’accesso come root in uno stato completamente nuovo, applicando solo l’ambiente predefinito dell’utente root.

$ su -

5. Passare a root usando il comando su

Puoi anche passare all’utente root dal tuo account utente corrente usando il comando su. Questo metodo è comunemente usato in altre distribuzioni Linux ed è utile quando è impostata una password di root. Tuttavia, poiché Ubuntu disabilita la password di root per impostazione predefinita, potresti doverla abilitare manualmente.

5.1 Uso base del comando su

Il comando su è usato per cambiare utente. Se vuoi passare a un altro utente, specifica il nome utente. Per passare all’utente root, inserisci il comando seguente:

$ su

Questo comando ti chiede di inserire la password di root. Se la password corretta è fornita, la shell passa all’utente root. Dopo aver completato le tue operazioni, usa il comando exit per tornare alla sessione utente precedente.

5.2 Differenza tra su e su –

Usare su - avvia una shell con le impostazioni complete dell’ambiente dell’utente di destinazione, effettuando effettivamente il login come quell’utente. Questo è utile quando desideri un ambiente root pulito senza ereditare le impostazioni del tuo utente corrente. Usalo come segue:

$ su -

La principale differenza tra su e su - è che su mantiene le variabili d’ambiente dell’utente corrente, mentre su - carica un nuovo ambiente shell come se ti fossi loggato come root fin dall’inizio.

6. Considerazioni di Sicurezza Quando Si Usano i Privilegi di Root

Avere i privilegi di root garantisce il controllo totale sul sistema, ma un uso improprio o modifiche accidentali possono comportare seri rischi. Pertanto, nella gestione di Ubuntu, le misure di sicurezza dovrebbero essere sempre prioritarie quando si usano i privilegi di root. Di seguito sono riportate alcune considerazioni di sicurezza fondamentali.

6.1 Evitare l’Uso Innecessario dei Privilegi di Root

Poiché i privilegi di root consentono operazioni potenti, è consigliabile ridurre al minimo il lavoro in una sessione di root. Utilizzare il comando sudo per un accesso temporaneo a root è più sicuro e riduce il rischio di cancellazioni accidentali o configurazioni errate. Se hai spesso bisogno di accesso root, considera di eseguire solo comandi specifici come root invece di accedere completamente come root.

6.2 Uscire Sempre dalle Sessioni di Root

Una volta terminato l’uso di una shell di root, esci sempre con il comando exit per tornare al tuo account utente normale. Rimanere in una sessione di root aumenta il rischio di operazioni non intenzionali con privilegi di root. Anche per compiti brevi, abituarsi a uscire da root aiuta a migliorare la sicurezza.

6.3 Configurare Correttamente il File sudoers

Il file sudoers determina quali utenti possono eseguire comandi sudo. Puoi modificare questo file con il comando visudo per limitare l’accesso sudo a utenti specifici. Ciò impedisce a utenti non autorizzati di ottenere l’accesso root se il tuo sistema viene compromesso.

6.4 Utilizzare i Log di Audit

Ubuntu registra i log dell’uso dei privilegi di root, consentendo agli amministratori di verificare quali utenti hanno eseguito comandi a livello di root. Ciò è particolarmente utile in ambienti multiutente, dove audit di sicurezza regolari possono aiutare a tracciare le modifiche al sistema e prevenire azioni non autorizzate.

7. Errori comuni e le loro soluzioni

Quando si passa a root o si lavora con privilegi di root su Ubuntu, è possibile imbattersi in alcuni errori comuni. Comprendere questi errori e come risolverli può aiutare a semplificare la risoluzione dei problemi.

7.1 Errore “Permesso negato”

Se provi a eseguire un comando che richiede privilegi di root come utente normale, potresti vedere un errore Permission denied . Questo significa che non disponi dei permessi necessari. Per risolvere, riesegui il comando con sudo:

$ sudo [command]

Se hai bisogno di eseguire più comandi come root, considera di passare a una shell root.

7.2 Errore “L’utente non è nel file sudoers”

Se un utente non è registrato nel file sudoers, vedrà l’errore user is not in the sudoers file, impedendo l’uso di sudo. Per risolvere, accedi come amministratore e modifica il file sudoers usando visudo. Aggiungi la seguente riga per concedere l’accesso sudo:

username ALL=(ALL) NOPASSWD: ALL

7.3 Problemi di timeout di sudo

Se sudo non richiede una password durante l’esecuzione dei comandi, potrebbe dipendere dal timeout della sessione. Una volta scaduto il periodo di autenticazione, è necessario reinserire la password. Basta rieseguire il comando sudo e inserire nuovamente la password.

7.4 La password di root è disabilitata

Per impostazione predefinita, l’account root è disabilitato in Ubuntu. Se provi a passare a root usando il comando su, potresti incontrare un errore “Authentication failure”. Per abilitare l’account root, imposta una password con il seguente comando:

$ sudo passwd root

Dopo aver impostato la password, l’account root sarà attivato e utilizzabile.

8. Conclusione

Questo articolo ha coperto vari metodi per passare a root su Ubuntu. Poiché i privilegi di root concedono l’accesso completo al sistema, usarli correttamente è fondamentale per mantenere la sicurezza e la stabilità del sistema. Di seguito è riportato un riepilogo dei punti chiave:

  • Importanza dei privilegi di root: L’accesso root è essenziale per una gestione profonda del sistema.
  • Utilizzare sudo per privilegi temporanei: Eseguire comandi con sudo [command] riduce i rischi di sicurezza.
  • Passaggio a una Shell Root: I comandi come sudo -i e sudo su consentono una sessione shell root.
  • Comprendere su e su -: Sapere quando usare su rispetto a su - è importante.
  • Considerazioni sulla sicurezza: Riduci al minimo l’uso di root e disconnettiti sempre dalle sessioni root.
  • Errori comuni e soluzioni: Risolvi i problemi di accesso sudo e root in modo efficiente.

 

侍エンジニア塾