Questa è la prima domanda che gli utenti pongono dopo aver installato Ubuntu: leggi, ricorda e passa ad altri ...
A proposito, questo è stato il mio primo problema quando ho iniziato a lavorare con Ubuntu.
Per molto tempo ho cercato di capire come ottenere i diritti di superutente (è bello avere almeno alcuni diritti :-))
Tutto si è rivelato molto più semplice di quanto pensassi e anche più semplice del previsto. Esistono due modi per eseguire comandi con privilegi di root:
team di sicurezza sudo
Ad esempio, dobbiamo iniziare ad aggiornare i pacchetti usando questo comando
Se si tenta di eseguirlo al di fuori del root, è possibile ottenere il seguente messaggio:
Ma in Ubuntu c'è un modo abbastanza semplice per sbarazzarsi di questi messaggi digitando il comando come segue:
Quando inizi una tale combinazione, vedrai qualcosa di simile al seguente
Ciò significa che tutto è a posto e che gli elenchi dei pacchetti sono stati aggiornati.
Il fascino di usare il comando sudo è che dal punto di vista della sicurezza (e ultimamente questa parola ha ronzato dappertutto)
è molto meglio solo se necessario eseguire operazioni con diritti di superutente.
Ma c'è una seconda opzione: il mio Linuxsoids più amato e familiare, così come molti principianti e inveterati ...
La differenza è piccola a prima vista, ma c'è un enorme divario tra i team sudo e sudo -i.
Con il comando sudo -i, l'utente ha l'opportunità di passare da una sessione utente normale a una sessione superutente - root
L'accesso con i diritti di superutente subito dopo l'accesso alla console è simile al seguente:
Dove ottenere la password?
Se non hai inserito tu stesso il sistema, questa domanda è logica, ma è meglio chiedere a chi ha impostato il sistema.
Se hai installato Ubuntu da solo, la risposta è semplice: il nome utente che hai inserito durante l'installazione e quella password
che hai inserito per l'utente e sono necessari per i diritti di superutente.
L'installazione aggiunge automaticamente il primo utente creato (quello specificato nell'installazione) al gruppo admin,
di conseguenza, questo utente ha il diritto di disporre dei diritti di root - superutente
Come accedere come utente root in Ubuntu
Per impostazione predefinita, nel sistema operativo Ubuntu, l'account di root non è abilitato durante l'installazione, quindi all'utente non viene richiesto di creare una password di root. Invece, viene creato un account utente normale, ma con privilegi sudo. Cioè, per eseguire qualsiasi comando con privilegi di root, è necessario eseguirli insieme al comando sudo. Questo non è sempre conveniente! Ora ti dirò come andare su Root in Ubuntu o dare all'utente i diritti di root. Esistono diverse opzioni e considereremo ognuna di esse!
Nota: Prima di includere l'utente root in Ubuntu, è necessario comprendere il pericolo di ciò per un utente inesperto. Eseguendo i comandi per suo conto, puoi facilmente e semplicemente letteralmente diversi comandi portare il sistema operativo in uno stato non funzionante.
contenuto
In qualsiasi sistema Linux, c'è sempre un utente privilegiato: root. Questo utente ha il diritto di eseguire qualsiasi azione, eliminare qualsiasi file e modificare qualsiasi parametro. È quasi impossibile limitare in qualche modo la libertà di azione di root. D'altra parte, tutti gli altri utenti del sistema di solito non dispongono della maggior parte dei diritti necessari, ad esempio i diritti di installazione dei programmi, poiché si tratta di un'operazione amministrativa, solo root ha i diritti. Un'altra operazione comune, disponibile solo per il superutente, è la copia e la modifica dei file nelle cartelle di sistema, a cui un utente normale non ha accesso.
In precedenza, questo problema era stato risolto abbastanza semplicemente: quando avevi la password di root, potevi accedere al sistema con il suo account o ottenere temporaneamente i suoi diritti usando il comando su. Quindi eseguire tutte le operazioni necessarie e tornare indietro come utente normale. In linea di principio, un tale schema funziona bene, ma presenta molti svantaggi significativi, in particolare, è impossibile in alcun modo (più precisamente, molto difficile) limitare i privilegi amministrativi a una determinata gamma di compiti.
Pertanto, nelle moderne distribuzioni Linux, anziché l'account root per l'amministrazione, viene utilizzata l'utilità sudo.
In Ubuntu, per impostazione predefinita, l'account di root è generalmente disabilitato, ad es. non puoi ottenere il root in alcun modo senza accenderlo. root è esattamente ciò che è disabilitato, cioè è presente nel sistema, è semplicemente impossibile accedervi. Se si desidera restituire la possibilità di utilizzare root, vedere la sezione sull'abilitazione dell'account root di seguito.
Dare diritti di root all'utente
La prima e più semplice opzione ti consente di non inserire costantemente il comando sudo ogni volta che inserisci un comando che deve essere eseguito in modalità privilegiata. Per passare alla modalità radice completa, immettere il seguente comando:
Successivamente, entrerai nella modalità superutente privilegiata Ubuntu.
C'è una seconda opzione:
In questo caso, la home directory non cambierà in / root, ma l'utente rimarrà. Di norma, questa opzione è più conveniente.
Come abilitare il root in Ubuntu
Puoi sempre abilitare l'account root su Ubuntu impostando una password usando il comando passwd. Ma per eseguire il comando passwd per l'account root, sono necessari i privilegi di sudo.
Possiamo abilitare l'account Ubuntu root impostando una password per esso usando il comando passwd. Ma per eseguire il comando passwd per l'account root, sono necessari i privilegi di sudo.
Apri un terminale Ubuntu ed esegui il comando per verificare di essere un membro del gruppo amministratori:
Se disponi dei diritti appropriati, puoi impostare la password di root con il seguente comando:
Innanzitutto, il sistema ti chiederà di inserire la tua password per confermare che hai i diritti sudo.
Successivamente, il comando passwd ti chiederà di inserire una nuova password per l'account root. Questo viene fatto due volte. Ora puoi accedere come root con il comando:
Quindi seguirà una richiesta per una password: inserire la password per root.
Come eseguire il root come GUI Ubuntu Desktop
Se si desidera accedere come utente root, non nella console, ma sul desktop grafico di Ubuntu, è necessario seguire alcuni passaggi aggiuntivi dopo aver attivato l'utente root:
Apri il file /etc/gdm3/custom.conf. Qui dovrai aggiungere AllowRoot = true nel blocco [security]. In questo modo:
Quindi aprire il file /etc/pam.d/gdm-password e trovare la riga in questo modo:
Commentalo posizionando il segno # davanti:
Quindi, riavvia il computer. Quando si riavvia e viene visualizzato nella schermata di accesso, fare clic sul collegamento "Non nell'elenco?". Non resta che immettere root nel campo nome utente e specificare la password per il superutente. Questo è tutto!
Che cos'è il sudo
sudo è un'utilità che fornisce i privilegi di root per eseguire operazioni amministrative in conformità con le sue impostazioni. Ti consente di controllare facilmente l'accesso ad importanti applicazioni nel sistema. Per impostazione predefinita, durante l'installazione di Ubuntu, al primo utente (quello che viene creato durante l'installazione) vengono assegnati tutti i diritti per utilizzare sudo. ie infatti, il primo utente ha la stessa libertà di root. Tuttavia, questo comportamento di sudo è facile da modificare, vedere la sezione sulla configurazione di sudo di seguito.
Dove si usa sudo?
sudo viene sempre utilizzato quando si avvia qualcosa dal menu Amministrazione sistema. Ad esempio, quando avvii Synaptic, ti verrà chiesto di inserire la password. Synaptic è un programma di gestione del software installato, quindi per eseguirlo sono necessari i diritti di amministratore, che si ottiene attraverso sudo inserendo la password.
Tuttavia, non tutti i programmi che richiedono privilegi di amministratore eseguono automaticamente sudo. In genere, è necessario eseguire manualmente programmi con privilegi di amministratore.
Esecuzione di programmi grafici con privilegi di amministratore
Per eseguire programmi grafici con diritti di amministratore, è possibile utilizzare la finestra di dialogo di avvio del programma, chiamata per impostazione predefinita dalla combinazione di tasti Alt + F2.
Supponiamo di dover eseguire il file manager Nautilus con i privilegi di amministratore per modificare in qualche modo il contenuto delle cartelle di sistema attraverso l'interfaccia grafica. Per fare ciò, immettere il comando nella finestra di dialogo di avvio dell'applicazione
Invece di gksudo, puoi sostituire gksu, inoltre gli utenti di KDE devono scrivere kdesu invece di gksudo. Ti verrà chiesto di inserire la password e, se disponi dei diritti necessari, Nautilus inizierà come amministratore. Puoi avviare qualsiasi software grafico con diritti di amministratore semplicemente scrivendo nella finestra di dialogo di avvio
Esecuzione di programmi con diritti di amministratore nel terminale
Per eseguire un comando con diritti di amministratore nel terminale, digita semplicemente sudo al suo interno:
Ti verrà chiesto di inserire la password. Stai attento quando inserisci la password in nessun modo non visualizzato, questo è normale e fatto per motivi di sicurezza, basta digitare fino alla fine e premere Invio. Dopo aver inserito la password, il comando specificato verrà eseguito come root.
Il sistema ricorda la password inserita per qualche tempo (mantiene aperta la sessione sudo). Pertanto, le successive esecuzioni sudo potrebbero non richiedere una password. Per la chiusura garantita della sessione sudo, digitare il terminale
Inoltre, ci sono spesso errori relativi ai canali in Linux. Quando si esegue un comando
con i privilegi di root verrà eseguito solo cat, quindi il file result.txt potrebbe non essere registrato. Devi scrivere sudo prima di ogni comando o passare temporaneamente a superutente.
Ottenere i privilegi di superutente per eseguire diversi comandi
A volte diventa necessario eseguire diversi comandi con privilegi di amministratore in una riga. In questo caso, puoi diventare temporaneamente il superutente di uno dei seguenti comandi:
Dopodiché, entrerai in modalità superutente (con restrizioni imposte dalle impostazioni sudo), come indicato dal simbolo # alla fine del prompt dei comandi. Questi comandi di azione sono simili a su, tuttavia: - sudo -s - non cambia la home directory in / root, la home directory del chiamante è la home directory sudo -sche di solito è molto conveniente. - sudo -i - cambia anche la directory home in / root.
Per tornare alla normale modalità utente, digitare exit o premere semplicemente Ctrl + D.
Ubuntu 11.10 e versioni successive
A partire dalla versione 11.10, è stato installato il gestore degli accessi lightdm e la gestione dell'accesso root è un po 'più complicata.
1. Impostare la password di root. Inserisci nel terminale:
2. Attiva la voce "Inserisci login". Inserisci nel terminale:
Alla fine del file, aggiungi:
3. Riavvia lightdm. Inserisci nel terminale:
Questo è tutto, l'elemento "Login" apparirà nella schermata di accesso. Nel campo di accesso, inserisci "root", nel campo password - la password che abbiamo impostato nella prima fase.
Per bloccare l'account di root, è necessario ripristinare le modifiche nelle impostazioni di lightdm e bloccare anche l'account di root con il comando nel terminale:
Impostazione di sudo e permessi per eseguire vari comandi
sudo consente di abilitare o disabilitare gli utenti per eseguire un set specifico di programmi. Tutte le impostazioni relative ai diritti di accesso sono archiviate in un file / etc / sudoers . Questo non è un file ordinario. Per modificarlo è necessario (per motivi di sicurezza) utilizzare il comando
Per impostazione predefinita, dice che tutti i membri del gruppo Admin avere pieno accesso a sudo, come dice la linea
Puoi leggere ulteriori informazioni sulla sintassi e sulle opzioni di personalizzazione per questo file eseguendo
Consenti all'utente di eseguire il comando senza inserire la password
Affinché il sistema non richieda una password per determinati comandi, è necessario nei sudoers dopo la riga # Specifica alias cmm aggiungi una riga in cui, attraverso una virgola, elenca i comandi desiderati con il percorso completo (il percorso del comando può essere trovato eseguendo quale nome_comando:
E aggiungi una riga alla fine del file
Periodo di validità della password
Forse vuoi cambiare la quantità di tempo in cui sudo funziona senza inserire una password. Ciò si ottiene facilmente aggiungendo quanto segue a / etc / sudoers (visudo):
Ecco sudo per l'utente foo valido senza la necessità di inserire una password per 20 minuti. Se vuoi che sudo richieda sempre una password, imposta timestamp_timeout su 0.
sudo non richiede una password
sudo senza password è una mostruosa falla di sicurezza per chiunque sia autorizzato a fare qualsiasi cosa. Se lo hai risolto intenzionalmente, torna urgentemente indietro com'era.
Tuttavia, in alcuni casi, sudo smette improvvisamente di richiedere una password da sola. Se fai visudo, puoi vedere qualcosa come questa linea che l'utente non sembra aggiungere:
Molto probabilmente, questa linea catastrofica è stata aggiunta durante l'installazione di un programma come Connect Manager da MTS o Megafon. In questo caso, è necessario modificarlo in una riga che consenta l'esecuzione di questo Connect Manager con privilegi di root, in questo modo:
Ci sono altre soluzioni al problema, una breve discussione qui.