Problème SUDO (NO MDP)

Bonjour,

Me penchant sur le sécurité d’un vieux serveur, je me suis rendu compte que via mon compte utilisateur je pouvais avoir accès au droit sudo.
En effet, quand je tape sudo -i via ce compte utilisateur il me met directement en droit sudo sans me demander de mot de passe, nada.

Passans par le compte ROOT j’ai fait une commande pour enlever l’utilisateur pi des droits sudo :
deluser pi sudo
Cela me confirme bien qu’il n’a plus les droits root.

root@raspberrypi:/home/pi# deluser pi sudo
Suppression de l'utilisateur pi « pi » du groupe « sudo ». . .
Fait.
root@raspberrypi:/home/pi# 
root@raspberrypi:/home/pi#  exit
exit
pi@raspberrypi:~ $ 
pi@raspberrypi:~ $ sudo -s
root@raspberrypi:/home/pi#  
root@raspberrypi:/home/pi#  exit
exit
pi@raspberrypi:~ $ 
pi@raspberrypi:~ $ sudo -i
root@raspberrypi:~# 

Mais le problème persiste… Je peux toujours aller en root avec mon utilisateur pi et sans aucune demande de mot de passe.

Avez-vous une idée pour régler ce problème ?

Merci par avance :slight_smile:

Bonjour

Pour que la modification que tu viens de faire soit prise en compte,
il te faut fermer la session que tu utilises <=> déconnecte toi et ouvre une session qui tiendra alors compte des changements effectués

Je l’ai fait à plusieurs reprises, mais rien y fait… Le problème persiste et je peux continuer à me connecter en root sur mon compte utilisateur.

Bonjour,

attention toutefois, sur Raspbian / Raspberry Pi OS, il me semble que la connexion au compte root est désactivée par défaut (il n’a pas de mot de passe). Si tu enlèves les droits sudo au compte pi, assure toi de pouvoir tout de même te connecter au compte root, que ce soit directement, ou, mieux, en passant pas su -.

Tu peux nous montrer ce que dit: grep root /etc/passwd ?

Si tu veux que la connexion au compte root via sudo te demande ton mot de passe, édite le fichier /etc/sudoers avec la commande sudo visudo, il est possible que ton fichier ait une ligne ainsi:

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

qu’il faudrait remplacer par:

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

Bonjour,

Merci pour ta réponse,
Je peux toujours me connecter au compte root avec su -s.

Voila le retour de la commande grep root /etc/passwd :

root@raspberrypi:/home/pi# grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
root@raspberrypi:/home/pi# 

De plus dans le fichier sudoers, je n’ai aucune ligne ressemblant à :

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

Mais j’ai bien :

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

Est-ce qu’il y a des fichiers dans le répertoire /etc/sudoers.d ?

Oui :

root@raspberrypi:/etc/sudoers.d# ls
010_at-export  010_pi-nopasswd  010_proxy  README
root@raspberrypi:/etc/sudoers.d# 

Peux-tu nous copier/coller leur contenu ?

Au vu des noms de fichiers, je suspecte que ce soit 010_pi-nopasswd qui implique le comportement, mais autant vérifier également les autres.

Voici un screen de leur contenu :

root@raspberrypi:/etc/sudoers.d# ls
010_at-export  010_pi-nopasswd  010_proxy  README
root@raspberrypi:/etc/sudoers.d# 
root@raspberrypi:/etc/sudoers.d# cat 010_at-export
Defaults env_keep += "NO_AT_BRIDGE"
root@raspberrypi:/etc/sudoers.d# 
root@raspberrypi:/etc/sudoers.d# cat 010_pi-nopasswd
pi ALL=(ALL) NOPASSWD: ALL
root@raspberrypi:/etc/sudoers.d# 
root@raspberrypi:/etc/sudoers.d# cat 010_proxy
Defaults env_keep += "http_proxy HTTP_PROXY"
Defaults env_keep += "https_proxy HTTPS_PROXY"
Defaults env_keep += "ftp_proxy FTP_PROXY"
Defaults env_keep += "RSYNC_PROXY"
Defaults env_keep += "no_proxy NO PROXY"
root@raspberrypi:/etc/sudoers.d# 

OK, tu peux supprimer le fichier 010_pi-nopasswd, et ça devrait être bon.

1 J'aime

Bingo ! Je te remercie, j’aime bien comprendre un peu pourquoi ca bloquait et d’où vient ce fichier si tu peux m’expliquer ca serait sympa :slight_smile:

Ps: j’ai le même fichier sur un autre serveur mais il me pose aucun problème (je le garde ou je le supprime ?)

Merci à toi :slight_smile:

Je ne sais pas du tout d’où il provient, c’est possiblement les mainteneurs de la distribution installée qui l’ont placé.
Sur ton autre serveurs, tu peux tenter dpkg -S /etc/sudoers.d/010_pi-nopasswd, si c’est l’installation d’un paquet qui a créé ce fichier, cette commande te dira lequel. Si la commande ne retourne rien, alors aucune idée :yum:

Attention cependant, sur une distribnution Debian Stable Bullseye, si ton user n’a pas accès au sudo, tu ne pourras pas faire un su- car il faut faire parti d’un groupe special et configurer le fichier /etc/pam.d/su.