Perché Ubuntu ha un account root disabilitato?


57

Ubuntu disabilita l'accesso root per "motivi di sicurezza". Tuttavia, mi sembra che non aiuti affatto con la sicurezza.

Se un intruso riesce a ottenere la tua password di accesso per Ubuntu, allora ha anche la password del superutente, poiché è la stessa della password di accesso.

Tuttavia, se è richiesta la password di root, il solo fatto di avere il login non aiuterà molto l'intruso - giusto vero?

Quindi, in sostanza, quello che voglio sapere è: perché Ubuntu ha scelto di disabilitare la password di root? Quali sono i motivi di sicurezza?

Per favore, non rispondere in base a quello che "pensi" sia stato il motivo: sto cercando una risposta da fonti ufficiali o collegata a loro.


6
Vedi se questo aiuta.
Mitch

5
I motivi per usare sudo sono gli stessi del motivo per cui sudo è stato creato in primo luogo.
Thorbjørn Ravn Andersen,

2
Canonical ritiene che sia il più vicino equilibrio tra usabilità e sicurezza per gli utenti Windows e OSX che non hanno esperienza nell'amministrazione del sistema. Lo scopo di avere una distribuzione desktop è fare appello a persone che non vogliono conoscere Linux, di per sé, ma vogliono essere in grado di trovare le cose che vogliono eseguire, fare clic su di esse e farle funzionare. Nel momento in cui un utente "normale" diventa curioso di fare qualcosa di più di un semplice web / mail / pr0n / giochi improvvisamente Ubuntu può essere un gateway per tutte quelle cose interessanti di Unixy di cui hanno sentito parlare (incluso "abilitare" il root - è sempre stato lì , prova sudo su).
zxq9,

1
Se qualcuno genera il tuo account, può acquisire la password di root mentre la digiti, se mai sudal tuo account a root. Il tuo punto sull'escalation dei privilegi si applica solo se accedi come root su una console separata e non fai mai nulla come root che si fida di tutti i file a cui il tuo account normale ha accesso in scrittura. Come affermano le risposte esistenti, uno dei motivi principali è quello di scoraggiare i neofiti dal pensare a root come a un account a cui dovresti accedere e utilizzare.
Peter Cordes,

Risposte:


81

Mitch ha pubblicato un buon link nel commento: perché è male accedere come root? e il sito Debian ha i principali vantaggi elencati nella loro wiki :

Perché sudo?

Usare sudoè meglio (più sicuro) che aprire una sessione come root per una serie di motivi, tra cui:

  • Nessuno deve conoscere la password di root ( sudorichiede la password dell'utente corrente). I privilegi extra possono essere temporaneamente concessi ai singoli utenti e quindi rimossi senza la necessità di modificare la password.

  • È facile eseguire solo i comandi che richiedono privilegi speciali tramite sudo; per il resto del tempo, lavori come utente non privilegiato, il che riduce il danno che gli errori possono causare.

  • Controllo / registrazione: quando sudoviene eseguito un comando, vengono registrati il ​​nome utente e il comando originali.

Per i motivi di cui sopra, il passaggio a root utilizzando sudo -i(o sudo su) è in genere obsoleto perché annulla le funzionalità di cui sopra.

Riguardo a Ubuntu I vantaggi e gli svantaggi sono elencati sul nostro wiki :

Vantaggi dell'utilizzo di sudo

Esistono numerosi vantaggi per Ubuntu che disabilita l'accesso root come impostazione predefinita, tra cui:

  • L'installatore ha meno domande da porre. Gli utenti non devono ricordare una password aggiuntiva per un uso occasionale (ad esempio la password di root). Se lo facessero, è probabile che lo dimentichino (o lo registrino in modo non sicuro, permettendo a chiunque di entrare facilmente nel loro sistema).

  • Evita l'accesso interattivo "Posso fare qualsiasi cosa" per impostazione predefinita. Ti verrà richiesta una password prima che possano verificarsi importanti cambiamenti, il che dovrebbe farti pensare alle conseguenze di ciò che stai facendo.

  • sudo aggiunge una voce di registro del comando (i) eseguito (in /var/log/auth.log). Se sbagli, puoi tornare indietro e vedere quali comandi sono stati eseguiti.

  • Su un server, ogni cracker che tenta di forzare la propria strada saprà che ha un account chiamato root e lo proverà per primo. Quello che non sanno è quali sono i nomi utente degli altri utenti. Poiché la password dell'account di root è bloccata, questo attacco diventa essenzialmente insignificante, poiché non esiste una password da decifrare o indovinare in primo luogo.

  • Consente un facile trasferimento dei diritti di amministratore aggiungendo e rimuovendo utenti dai gruppi. Quando si utilizza una singola password di root, l'unico modo per annullare l'autorizzazione degli utenti è modificare la password di root.
  • sudo può essere configurato con una politica di sicurezza molto più dettagliata. La password dell'account di root non deve essere condivisa con tutti coloro che devono eseguire alcuni tipi di attività amministrative sul sistema (vedere il punto elenco precedente).

  • L'autenticazione scade automaticamente dopo un breve periodo (che può essere impostato su un valore minimo o su 0); quindi se ti allontani dal terminale dopo aver eseguito i comandi come root usando sudo, non lascerai un terminale root aperto indefinitamente.

Lati negativi dell'utilizzo di sudo

Sebbene per i desktop i vantaggi dell'utilizzo di sudo siano notevoli, ci sono possibili problemi che devono essere notati:

  • Il reindirizzamento dell'output dei comandi eseguiti con sudo richiede un approccio diverso. Ad esempio, considera sudo ls > /root/somefile che non funzionerà poiché è la shell che tenta di scrivere su quel file. È possibile utilizzare ls | sudo tee -a /root/somefileper aggiungere o ls | sudo tee /root/somefileper sovrascrivere i contenuti. È inoltre possibile passare l'intero comando a un processo di shell eseguito su sudo per avere il file scritto con permessi di root, come sudo sh -c "ls > /root/somefile".

  • In molti ambienti d'ufficio, l'UNICO utente locale su un sistema è root. Tutti gli altri utenti vengono importati utilizzando tecniche NSS come nss-ldap. Per configurare una workstation o risolverlo, nel caso di un errore di rete in cui nss-ldap è rotto, è richiesto root. Questo tende a lasciare il sistema inutilizzabile se non rotto. Qui è necessario un utente locale aggiuntivo o una password di root abilitata. L'account utente locale dovrebbe avere $ HOME su un disco locale, nonsu NFS (o qualsiasi altro filesystem in rete) e un .profile / .bashrc che non fa riferimento a nessun file sui montaggi NFS. Questo è generalmente il caso di root, ma se si aggiunge un account di ripristino non root, è necessario prendere queste precauzioni manualmente. Tuttavia, il vantaggio di utilizzare un utente locale con sudo è che i comandi possono essere facilmente monitorati, come menzionato nei vantaggi sopra.

E l'abbiamo sempre avuto (sin dalla prima uscita).


Il riferimento più vecchio che ho trovato parla di 4.10 che ha "sudo"

SHUTTLEWORTH LANCIA UBUNTU LINUX A BASE DEBIANA

... Ubuntu Linux basato su Debian include Gnome 2.8, kernel 2.6.8.1, OpenOffice.org 1.1.2 e viene fornito con una procedura di installazione testuale, ma semplice. Ubuntu ha disabilitato l'utente root preferendo usare sudo proprio come fa Mac OSX ...


Mancano un paio di funzionalità di sicurezza dai vantaggi : (i.) (Per la GUI) Nessuno può ottenere un "privilegio elevato" senza accesso locale interattivo (digitando la password sulla tastiera); (ii.) La 'privilegio elevato' è accordato per il comando sudo'd (s) solo, non alcuna attività / thread per l'utente (o root).
david6,

Questo sembra ignorare i punti sollevati nella domanda originale e oscurarla con molte altre informazioni perché è buona?
Paul23

6

Credo che ciò che è scritto nella pagina di aiuto sia abbastanza chiaro e abbastanza obiettivo.

Ubuntu è "per tutti" e anche se sei abbastanza bravo non hai bisogno dell'accesso root per danneggiare il tuo computer, allo stesso tempo non ne hai quasi bisogno (e sai come abilitarlo facilmente).
Quindi il problema non è con le persone che sono "abbastanza buone", ma per tutti gli altri, che potrebbero venire su Linux da un altro mondo dell'informatica e il primo impatto è con Ubuntu (e siamo in molti).

Se non sei un esperto e non sai esattamente cosa rootsia e come gestirlo correttamente, non vuoi né devi averlo abilitato (e rischi, ad esempio, di effettuare un accesso grafico con esso).
È molto meglio imparare a fare le cose sul lato sicuro e poi passare a un percorso più difficile e pericoloso, piuttosto che iniziare direttamente con la strada difficile e quindi danneggiare la propria installazione / workstation, sentirsi frustrati e forse incapaci di ripristinare un funzionamento completo sistema.
In generale, prevenire è molto meglio che curare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.