Gestire e Assumere i Privilegi di Amministratore in Linux

Continuiamo con la nostra serie di articoli che, attraverso esempi pratici e semplificati, dimostrano l’applicazione di strumenti fondamentali nei rispettivi ambiti. Introduciamo come Gestire e Assumere i Privilegi di Amministratore in Linux:

Prima di poter parlare di utenti e gruppi nell’ambiente Linux è necessario comprendere quanto sia importante che i privilegi di amministratore (root) debbano essere attentamente controllati, e utilizzati lo stretto necessario, per una corretta politica di sicurezza, questo concetto è valido sia per gli amministratori che per gli end users.
Nel seguente scenario utilizzeremo una distribuzione CentOS 7
Quindi procediamo con il loggarci da utenti comuni (nel seguente caso student01):
– Con il comando id possiamo verificare che si sia attualmente connessi come student01
– Immettere il comando su root per elevarsi a root, effettuando accesso con relativa password
– Verificare con il comando id che si sia connessi come root.
– Immettere il comando pwd per verificare l’attuale directory di lavoro

localhost login: student0l
Password:
Last login: Wed Aug 21 04:22:26 on ttyl
[student0l@localhost ~]$ id
uid=1000(student0l) gid=l000(student0l) groups=1000(student0l) context=unconf ined_u:unconf ined_r unconf ined_
[student0l@locaIhost ~]$ su root
Password:
[root@localhost student0l]# id
uid=0(root) gid=0(root) groups=0(root) context=unconf ined_u:unconf ined_r:unconf ined_t:s0-s0:c0.cl023
[root@localhost student0l]# pwd
/home/student0l
[root@localhost student0l]#

Da notare che nonostante ci si sia elevati a privilegi di root, il path e il contesto siano quelli dell’utente student01 (/home/student/), mentre utilizzando il comando su – root si può verificare con il comando pwd come cambia il path ed il contesto cambino (/root/):

[student01@localhost ~]$ su - root
Password:
Last login: Wed Aug 21 04:44:05 EDT 2019 on ttyl
[root@localhost ~]# pwd
/root
[root0localhost ~]#

Proseguiamo, per comprendere come delegare i privilegi di amministratore da un account comune (in questo caso student01)
– Immettiamo il comando visudo per iniziare a modificare il file sudoers (file di configurazione che contiene i nomi degli utenti che possono diventare temporaneamente root)
– Premiamo Page Down diverse volte per spostare il cursore alla fine del file, o in alternativa premere Shift+ G per muoversi direttamente sull’ultima riga del file
– Premiamo End per muoverci con il cursore alla fine dell’ultima riga
– Premiamo i per entrare nella modalità di insert per visualizzare una nuova riga vuota al di sotto di quella corrente
– Aggiungiamo il seguente testo nella nuova riga:
student01 ALL=(ALL) NOPASSWD:ALL
Questo consentirà all’account stuendt01 l’abilità di eseguire tutti i comandi senza dover passare necessariamente dall’utenza root, nello specifico non sarà necessario digitare la password. Ovviamente tutto ciò non è consigliato in ambiente di produzione.
– Proseguiamo uscendo dalla modalità di insert con Esc e salviamo e chiudiamo il file dalla modalità di comando immettendo: wq
– Immettere exit per ritornare al nostro account student01

Testiamo quanto detto in precedenza con il nostro account student01
– Prima di tutto effettuiamo il log out dal sistemo e accediamo nuovamente come student01
– Immettiamo il comando sudo /sbin/shutdown –r 15
Il seguente comando dice al sistema di riavviarsi con un ritardo di quindici minuti. Richiede privilegi amministrativi. Stai eseguendo il comando con sudo per sfruttare temporaneamente quei privilegi.
Nota: se mai dimentichi di aggiungere sudo a un comando privilegiato, inserisci sudo !! per emettere nuovamente il comando più recente con i privilegi di amministratore:

[student01@localhost ~]$ sudo /sbin/shutdown -r 15
Shutdown scheduled for Wed 2019-08-21 07:39:38 EDT, use 'shutdown -c' to cancel.
[student0181ocalhost ~]$
Broadcast message from [email protected] (Wed 2019-08-21 07:24:38 EDT):
The system is going down for reboot at Wed 2019-08-21 07:39:38 EDT!
[student01@localhost ~]$ sudo shutdown -c
Broadcast message from [email protected] (Wed 2019-08-21 07:24:51 EDT):
The system shutdown has been cancelled at Wed 2019-08-21 07:25:51 EDT!
[student01@localhost ~]$

– Premere Crtl+C, e successivamente immettere il comando sudo shutdown –c per interompere il riavvio
– A riprova di ciò, basterà rimuovere la riga student01 ALL=(ALL) NOPASSWD:ALL nel file sudoers, per non aver più la possibilità di lanciare i comandi appena eseguiti.

[student01@localhost ~]$ sudo /sbin/shutdown -r 15
[sudo] password for student0l:
student0l is not in the sudoers file. This incident will be reported.
[student01@localhost ~]$

Com’è possibile visualizzare è richiesto l’inserimento della password, inoltre una volta immessa vi indicherà che l’account student01 non è presente nel file sudoers.

Consulta il nostro Catalogo Corsi per Tecnologia oppure fai una Ricerca per Vendor o ancora trova uno specifico corso attraverso il motore di ricerca interno: Ricerca Corsi. Contattaci ora al Numero Verde 800-177596, il nostro team saprà supportarti nella scelta del percorso formativo più adatto alla tue esigenze.

RICHIEDI ORA IL SUPPORTO DI UN NOSTRO SPECIALISTA

Il nostro team, da anni impegnato nella progettazione di piani formativi strutturati nell’ambito dell’ IT, ti supporterà ad orientarti verso la scelta di un percorso formativo certificato rispondente alle tue esigenze.