Linux password di root dimenticata – Debian 9.xx

Può capitare di dimenticare la password di root oppure di modificare i permessi di modo che non risulta più possibile accedere al livello di amministrazione con il comando  sudo  ( per poter lanciare i comandi via sudo è necessario che l’utente appartenza al gruppo sudo ).  In questo caso conviene sfruttare il boot loader grub per accedere al terminale senza login.

Accesso al terminale senza password

Per ripristinare la password di root conviene appoggiarsi a grub modificando le direttive di accesso a livello della riga  che lancia il Kernel così da accedere in modo diretto al terminale con i privilegi di root senza la necessità di effettuare il login.
Per effettuare l’accesso diretto aggiungere la direttiva  init=/bin/bash al termine della riga

Per entrare in modalità edit di grub premere il tasto e  come indicato in basso nella schermata di grub

La schermata in modalità edit di grub 2.02 con le istruzioni per avvio di Debian 9.xx.

modificare la riga per l’avvio del Kernel

la riga per l’avvio del kernel che inizia con il comando linux va modificata dopo i parametri ro quiet  va appunto aggiunto init=/bin/bash

Adesso è possibile avviare debian come indicato in basso nella schermata premere F10 o Ctrl-X.

Ua volta che si è in modalità terminale come root si monta il file system in modalità rw

root@(none):/mount -o remount,rw /

A questo punto si ha il controllo del sistema e come utente root sarà possibile eseguire tutti i comandi necessari.

Ad esempio ripristinare la password con

passwd

assegnare i diritti di root ad un utente inserendolo nel gruppo sudo

usermod -aG sudo maurizio

riavviare con

root@(none):/reboot -f

Alcuni utili comandi

Prima di ripristinare la password dimenticata  in Debian 9.xx alcuni utili comandi:

Controllare i gruppi a cui l’utente appartiene con

id

Se l’utente non appartiene al gruppo sudo non avrà i privilegi di root e non potrà avviare comandi che li richiedono espressamente come mount, …

per controllare gli users di un determinato gruppo ( ad esempio gruppo sudo )  si può utilizzare

getent group sudo

il file /etc/sudoers elenca i privilegi per il lancio dei.

Ad esempio in Ubuntu è presente la linea

%sudo   ALL=(ALL:ALL)  ALL

che sta indicare che il gruppo sudo ha gli stessi privilegi dell’utente root

root    ALL=(ALL:ALL)  ALL

Risorse:

Installare sudo – super user do – linux debian

In genere risulta più sicuro e opportuno apportare le modifiche al sistema linux senza dover passare a root così come avviene in Ubuntu.
Per rendere operativa questa modalità in debian linux è necessario installare  “sudo” ( super user do ) e aggiungere l’utente al gruppo “sudo”.  Sarà possibile in questo modo  operare da root pur essendo “loggati” come normali utenti.

Installare sudo in Debian

Prima dell’inserimento dell’utente  nel gruppo “sudo” ecco viene visualizzato a livello di terminale quando si prova ad utilizzare  sudo in debian 9.

:~$ sudo su
sudo: unable to resolve host deb9s-Dskvm
[sudo] password for maurizio: 
maurizio is not in the sudoers file. This incident will be reported.

Per installare sudo passare a root root

su 
apt install sudo

Quindi aggiungere il proprio user a quelli che possono agire in qualità di root con:

adduser tuo-user sudo

L’aggiunta del nostro user al gruppo sudoers sarà disponibile al prossimo login.

Nel file /etc/suoders è visibile la configurazione che consente al gruppo di eseguire qualsiasi comando.

cat /etc/sudoers
... 

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

...

volendo è possible anche agire a questo livello per consentire ad un utente di eseguire qualsiasi comando

E’ possiible utilizzare echo oppure un qualsiasi editor di testo per modificare il file sudoers.

con echo (ovviamente va sostituito <tuo-username>)

echo "<tuo-username>   ALL = (ALL) ALL"   >>  /etc/sudoers

con un editor

vi /etc/sudoers

scorrere fino alla riga

root ALL=(ALL) ALL

e aggiungere sotto

[tuo-username]= ALL=(ALL) ALL 

per testare utilizzare il comando

sudo apt update

Risorse:

Ubuntu 14.xx password dimenticata

Può capitare di dimenticare una password oppure di modificare i permessi di modo che non risulta più possibile accedere al livello di amministrazione con il comando  sudo  ( per poter lanciare i comandi via sudo è necessario che l’utente appartenza al gruppo sudo ). Prima di ripristinare la password dimenticata  in Ubuntu 14.xx alcuni utili comandi:

Controllare i gruppi a cui l’utente appartiene con

id

Se l’utente non appartiene al gruppo sudo non avrà i privilegi di root e non potrà avviare comandi che li richiedono espressamente come mount, …

per controllare gli users di un determinato gruppo ( ad esempio gruppo sudo )  si può utilizzare

getent group sudo

il file /etc/sudoers elenca i privilegi per il lancio dei.

Ad esempio in Ubuntu è presente la linea

%sudo   ALL=(ALL:ALL)  ALL

che sta indicare che il gruppo sudo ha gli stessi privilegi dell’utente root

root    ALL=(ALL:ALL)  ALL

Accesso al terminale senza password

Per ripristinare la password è necessario accedere al terminale in modo diretto senza necessità di login.
Perso il controllo del sistema in Ubuntu 14.xx una modalità efficace è data dall’

avvio del kenel di Ubuntu utilizzando il parametro

init=/bin/bash

ubuntu 14.04 grub2-start
la schermata in modalità edit di grub 2.02 con le istruzioni per avvio di Ubuntu 14.04 .
Per entrare in modalità edit come indicato in basso nella schermata di grub digitare e
la riga per l’avvio del kernel che inizia con il comando linux va modificata dopo il parametro ro va appunto aggiunto init=/bin/bash

init=bin/bash

init=bin/bash

per avviare come indicato in basso nella schermata premere F10 o Ctrl-X.

Ua volta che si è in modalità terminale come root si monta il file system in modalità rw

root@(none):/mount -o remount,rw /

A questo punto si ha il controllo del sistema e come utente root sarà possibile eseguire tutti i comandi necessari.

Ad esempio ripristinare la password con

passwd

assegnare i diritti di root ad un utente inserendolo nel gruppo sudo

usermod -aG sudo maurizio

riavviare con

root@(none):/reboot -f

 

Risorse:

 

 

Installare sudo – super user do

In genere risulta più sicuro e opportuno apportare le modifiche al sistema linux senza dover passare a root come
avviene in Ubuntu. Per fare questo basta installare “sudo” ( super user do ) è sarà possibile poter operare, quando serve, da root pur essendo “loggati” come normali utenti.

Installare sudo in Debian

Per installare sudo diventare root e utilizzare aptitude

su 
aptitude install sudo

Quindi aggiungere il proprio user a quelli che possono agire in qualità di root.
Per fare questo è necessario modificare il file /etc/suoders.E possiible utilizzare echo oppure un qualsiasi editor di testo.

con echo (ovviamente va sostituito <tuo-username>)

echo "<tuo-username>   ALL = (ALL) ALL"   >>  /etc/sudoers

con un editor

nano /etc/sudoers

scorrere fino alla riga

root ALL=(ALL) ALL

e aggiungere sotto

[tuo-username]= ALL=(ALL) ALL 

= ALL=(ALL) ALL

per testare utilizzare il comando

sudo aptitude update

per controllare il servizio sudo è possibile utilizzare sysv-rc-conf

# sysv-rc-conf --list | grep sudo 
sudo         2:on	3:on	4:on	5:on

Qualora il serivizio sudo non risultasse avviato modificare avviare e modificare il run level di sudo abilitando i run level 2,3,4,5 sempre con sysv-rc-conf

sysv-rc-conf –level 2345 sudo on

il servizio sudo consente queste operazioni

#service sudo 
Usage: /etc/init.d/sudo {start|stop|restart|force-reload}

per installare sysv-rc-conf con

aptitude install sysv-rc-conf

(dettagli: post come configurare l’avvio dei servizi con chkconfig e sys-rc-config)

Risorse;

Linux su (switch user) e sudo (super user do)

 

Il comando Su (switch user)   permette di diventare un altro utente  mentre il comando  sudo (super user do)  permette di eseguire operazioni con i privilegi di root ma utilizzando la propria password. In questo caso non è pertanto necessario conoscere la password di root . Per poter usare sudo (tipico dei sistemi ubuntu )  è necessario essere inseriri nel gruppo sudo.

Diventare root
su     (su: switch user)
su –
sudo -i

diventare root in Ubuntu anche in assenza di uno user <root> impostato tradizionalmente 

sudo -s    (sudo: super user do)
sudo su –  

cambiare utente
su    maurizio    ( non cambia percorso )
su –  maurizio   (  si posiziona nella home dello user )

Risorse:

Comandi Linux per gestire gli utenti

Diventare gestore di sistema ( root )

Il classico comando per elevarsi a root è:

su –     

se si desidera mantenere stessa root e ambiente

su    

e possibile utilizzare anche

sudo -i 

In Ubuntu c’è la l’abitudine di non definire una password per root e di eseguire i comandi dell’utente root utilizzando la forma sudo <command>.  E’ comunque possibile diventare root utilizzando il comando:

sudo su –     ( root in ubuntu )

Modifica la password di un’utente
passwd [nomeutente]

Gestire gli Utenti

who   mostra gli utenti collegati al sistema

whoami   mostra con che nome si è collegati

groups user   mostra a quali gruppi appartiene user

finger user    mostra alcune informazioni su user

su – etabeta   cambiare user e diventare l’utente etabeta