problème groupe sudo après installe bookworm Le sujet est résolu

Demande d'aide : c'est ici.
Répondre
Avatar de l’utilisateur
Xlub!
Membre
Membre
Messages : 24
Inscription : 08 août 2024, 19:19
Status : Hors-ligne

Bonjour.
Installe fraîche de bookworm, depuis mini iso, avec xfce comme bureau.
Donc pas de traficotage de ma part.

Je me suis rendu compte que plusieurs commandes n'étaient pas accessibles (lightdm, update-grub) ni par l'user, ni par root.

Code : Tout sélectionner

# update-grub
bash: update-grub : commande introuvable
Par contre elles sont accessible avec sudo :

Code : Tout sélectionner

:~$ sudo update-grub
update-grub   update-grub2

Surpris que sudo soit là par défaut, j'en étais resté à debian=su.
Plus curieux, l'user ne fais pas partis de sudo (à quoi sert sudo dans ce cas là ?)

Je consulte donc https://wiki.debian.org/SystemGroups?ac ... rch=Titres, mais adduser n'est pas installé [EDIT] n'est pas accessible, ni par user, ni par root (commande introuvable) ! Là je trouve ça vraiment étrange.
Pour moi c'est anormal un système dans cet état à l'installe.
Est-ce un problème de la mini iso ?

Je suppose que je pourrai installer le paquet manquant mais je suis tellement surpris que je préfère vous le signaler et avoir votre retour avant.
Avatar de l’utilisateur
diesel
Membre
Membre
Messages : 271
Inscription : 29 oct. 2022, 22:43
Status : Hors-ligne

Je suis sur debian cinnamon, donc je suppose qu'il peut y avoir quelques différences.

De mémoire, à l'install debian te demande si tu veux mettre un mot de passe pour root. Si tu n'en mets pas, il installe sudo (probablement dans l'autre cas aussi) et mets ton nom d'user dans le groupe sudo (dans /etc/group), ce qui te permet de lancer des commandes avec sudo.

Et que te dit : dpkg -l | grep adduser ?

Amicalement.

Jean-Marie
Avatar de l’utilisateur
Xlub!
Membre
Membre
Messages : 24
Inscription : 08 août 2024, 19:19
Status : Hors-ligne

Oui tu as raison, je vais corriger mon 1er message.

Code : Tout sélectionner

:~$ dpkg -l | grep adduser
ii  adduser                               3.134                                                   all          add and remove users and groups
Sans grandes surprises, la touche TAB nous renseigne:

Code : Tout sélectionner

:~$ sudo add
addgnupghome  addgroup      add-shell     adduser  
bub
Membre
Membre
Messages : 26
Inscription : 07 déc. 2023, 16:40
Status : Hors-ligne

Bonjour,
j'en étais resté à debian=su.
eh non, ça a évolué depuis, c'est su - (avec un tiret pour devenir root)
Sinon, tu restes chez l'utilisateur (et donc tu ne peux pas taper des commandes nécessitant un privilège)...
vu que (je sais) j'explique très mal ce truc du tiret, en exemple :

Code : Tout sélectionner

$ su
Mot de passe : 
root@optibub:/home/bubu# update-grub
bash: update-grub : commande introuvable

Code : Tout sélectionner

su -
Mot de passe : 
root@optibub:~# update-grub
Generating grub configuration file ...
... ensuite, que retourne la commande groups ? fait depuis ton shell/compte utilisateur
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors-ligne

Lisez la doc
https://wiki.debian.org/sudo
j'en suis resté à "why not sudo", et je m'en porte très bien. Je suis peut être trop vieux et fidèle aux fondements d'UNIX ....
bub
Membre
Membre
Messages : 26
Inscription : 07 déc. 2023, 16:40
Status : Hors-ligne

C'est pas tant la doc sudo or not sudo qu'il faudrait lire, mais plutôt la doc de su ...; Le problème ci-dessus venant plutot d'une (désormais) mauvaise utilisation de la commande su,
Avatar de l’utilisateur
diesel
Membre
Membre
Messages : 271
Inscription : 29 oct. 2022, 22:43
Status : Hors-ligne

Le problème, d'une manière générale, ce sont les habitudes.

Combien je vois de post qui expliquent comment configurer un pare-feu avec iptables, alors que, depuis quelques années maintenant, c'est nftables qu'il faut utiliser. Et c'est pareil pour ifup / ifdown...

Amicalement.

Jean-Marie
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors-ligne

J'utilise toujour iwconfig, je n'arrive pas à mémoriser les options de la commande ip :)
Pour su et sudo, ça va au dela des habitudes. C'est le principe fondamental de la séparation des privilèges qui est remis en cause. Ayant géré des stations de travail multiutilisateur dans le passé, et maintenant quelques serveurs, je suis peut être plus sensibilisé que ceux qui ne gère que des postes monoutilisateur.
sudo à été créé pour déléguer quelques droits ciblés à certains utilisateurs dans une équipe d'admin. L'utiliser pour donner tous les droits à un utilisateur est un non sens (il y a déjà l'utilisateur root pour ça, avec un mot de passe normalement bien durci).
Cela est d'autant plus vrai qu'avec la sophistication des attaques cyber, il est de plus en plus difficile de garantir qu'on est toujours le seul utilisateur de la machine :(
Avatar de l’utilisateur
Xlub!
Membre
Membre
Messages : 24
Inscription : 08 août 2024, 19:19
Status : Hors-ligne

Le problème, d'une manière générale, ce sont les habitudes.
+1 et je plaide coupable!
Mais c'est inévitable, on fonctionne ainsi : on apprends un truc, puis un autre, etc.. quand, comme pour moi, on n'utilise pas fréquemment quelque chose, on peut se retrouver à coté de la plaque alors qu'on a juste raté un changement.

J'avais lu la doc sudo figurez vous.
C'est plutôt celle là qu'il me fallait: https://manpages.debian.org/bookworm/ma ... .1.fr.html
mais au final, c'est l'explication de Bub que j'ai le mieux compris ! :good:

PS:

Code : Tout sélectionner

:~$ groups
yo cdrom floppy audio dip video plugdev users netdev bluetooth lpadmin scanner
Avatar de l’utilisateur
Xlub!
Membre
Membre
Messages : 24
Inscription : 08 août 2024, 19:19
Status : Hors-ligne

Mon problème est résolu, mais comment ça ce fait qu'on m'ai installer sudo sans que je sois dans le groupe ?
Pour l'instant mon sudo est inutilisable non ? C'est pas un problème ça ?
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors-ligne

Ca dépend ce que tu veux faire. Pour ce qui est des commandes root, tu peux utiliser

Code : Tout sélectionner

 su -
Si maintenant tu es plusieurs utilisateurs, et que tu veux déléguer certaines taches spécifiques a l'un d'entre eux, sudo te sera utile.
Avatar de l’utilisateur
zargos
Membre
Membre
Messages : 197
Inscription : 07 juil. 2023, 13:34
Status : Hors-ligne

Xlub! a écrit : 02 sept. 2024, 14:09 Mon problème est résolu, mais comment ça ce fait qu'on m'ai installer sudo sans que je sois dans le groupe ?
Pour l'instant mon sudo est inutilisable non ? C'est pas un problème ça ?
Par defaut desormais l'installation de Debian considère que si lors de cette installation tu as définis un mot de passe root, tu n'es plus dans le groupe sudo.

Et c'est une bonne chose.

Il est toujours possible d'utiliser la commande su de deux façon:
  • su tout court pour passer en root dans l'renvironnement utilisateur d'origine
  • su - pour passer en root avec l'envionnement root
C'est d'ailleurs valable pour su <user> et su - <user> pour n'importe quel autre utilisateur que root.

D'ailleurs une bonne pratique concernant su est de constituer un groupe pour su qui permet d'interdire l'utilisation de su à quelqu'un qui n'est pas dans le groupe (CF ci-après un extrait du CIS Workbench sur Debian 12 à consulter sur https://workbench.cisecurity.org/sectio ... ns/4685537) que je vous met ici si vous n'avez pas un compte pour y accéder:
5.2.7 Ensure access to the su command is restricted

PARENT : CIS _5_Configure privilege escalation Main | 2.1.7-Ensure access to the su command is restricted

Draft
Assessment Status
Automated
Applicable Profiles
Level 1 - Server
Level 1 - Workstation
Description

WARNING: The contents of this section may not render correctly in the Word Export

The su command allows a user to run a command or shell as another user. The program has been superseded by sudo, which allows for more granular control over privileged access. Normally, the su command can be executed by any user. By uncommenting the pam_wheel.so statement in /etc/pam.d/su, the su command will only allow users in a specific groups to execute su. This group should be empty to reinforce the use of sudo for privileged access.
Rationale Statement

WARNING: The contents of this section may not render correctly in the Word Export

Restricting the use of su , and using sudo in its place, provides system administrators better control of the escalation of user privileges to execute privileged commands. The sudo utility also provides a better logging and audit mechanism, as it can log each command executed via sudo , whereas su can only record that a user executed the su program.
Impact Statement
Audit Procedure

WARNING: The contents of this section may not render correctly in the Word Export

Run the following command:

# grep -Pi '^\h*auth\h+(?:required|requisite)\h+pam_wheel\.so\h+(?:[^#\n\r]+\h+)?((?!\2)(use_uid\b|group=\H+\b))\h+(?:[^#\n\r]+\h+)?((?!\1)(use_uid\b|group=\H+\b))(\h+.*)?$' /etc/pam.d/su

Verify the output matches:

auth required pam_wheel.so use_uid group=<group_name>

Run the following command and verify that the group specified in <group_name> contains no users:

# grep <group_name> /etc/group
5.2.7 Ensure access to the su command is restricted

PARENT : CIS _5_Configure privilege escalation Main | 2.1.7-Ensure access to the su command is restricted

Draft
Assessment Status
Automated
Applicable Profiles
Level 1 - Server
Level 1 - Workstation
Description

WARNING: The contents of this section may not render correctly in the Word Export

The su command allows a user to run a command or shell as another user. The program has been superseded by sudo, which allows for more granular control over privileged access. Normally, the su command can be executed by any user. By uncommenting the pam_wheel.so statement in /etc/pam.d/su, the su command will only allow users in a specific groups to execute su. This group should be empty to reinforce the use of sudo for privileged access.
Rationale Statement

WARNING: The contents of this section may not render correctly in the Word Export

Restricting the use of su , and using sudo in its place, provides system administrators better control of the escalation of user privileges to execute privileged commands. The sudo utility also provides a better logging and audit mechanism, as it can log each command executed via sudo , whereas su can only record that a user executed the su program.
Impact Statement
Audit Procedure

WARNING: The contents of this section may not render correctly in the Word Export

Run the following command:

# grep -Pi '^\h*auth\h+(?:required|requisite)\h+pam_wheel\.so\h+(?:[^#\n\r]+\h+)?((?!\2)(use_uid\b|group=\H+\b))\h+(?:[^#\n\r]+\h+)?((?!\1)(use_uid\b|group=\H+\b))(\h+.*)?$' /etc/pam.d/su

Verify the output matches:

auth required pam_wheel.so use_uid group=<group_name>

Run the following command and verify that the group specified in <group_name> contains no users:

# grep <group_name> /etc/group

Verify the output does not contain any users in the relevant group:

<group_name>:x:<GID>:

Remediation Procedure

Create an empty group that will be specified for use of the su command. The group should be named according to site policy.

Example:

# groupadd sugroup

Add the following line to the /etc/pam.d/su file, specifying the empty group:

auth required pam_wheel.so use_uid group=sugroup

Verify the output does not contain any users in the relevant group:

<group_name>:x:<GID>:

Remediation Procedure

Create an empty group that will be specified for use of the su command. The group should be named according to site policy.

Example:

# groupadd sugroup

Add the following line to the /etc/pam.d/su file, specifying the empty group:

auth required pam_wheel.so use_uid group=sugroup
Pour reven ir à sudo, il est d'une pratique mal utilisée.
A quoi sert d'avoir un root avec un mot de passe fort et des contraintes fortes si c'est pour donner son accès via sudo de façon inconditionnelle poru des user dont par définition la protection liée au mot de passe est plus faible que celel de root.

Personnelleemnt sudo n'est jamais autorisé sur mes users. Quand c'est le cas c'est toujorsu avec des commandes, voir des commandes et des paramètres précisement définis.

D'autre part n'oubliez pas que polkit permet aussi de permettre certains accès (comme la gestion des paquets) sans avoir à passer par sudo pkexec lié à polkit. Gestion des paquets que tous les utilisateurs n'ont pas besoin d'avoir. [Désolé je ne peux mettre de acpture d'écran directement sans passer par un site d'hébergement d'images, ce que je n'utilise pas).
Avatar de l’utilisateur
Xlub!
Membre
Membre
Messages : 24
Inscription : 08 août 2024, 19:19
Status : Hors-ligne

Par defaut desormais l'installation de Debian considère que si lors de cette installation tu as définis un mot de passe root, tu n'es plus dans le groupe sudo.
Oui, d'accord. Mais alors pourquoi l'installer quand même? C'est inutile, et si on décide d'en avoir besoin, on peut toujours le faire plus tard.
En tous cas, moi , sudo ne va me servir à rien, c'est clair !
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

Xlub! a écrit : 03 sept. 2024, 13:16
Par defaut desormais l'installation de Debian considère que si lors de cette installation tu as définis un mot de passe root, tu n'es plus dans le groupe sudo.
Oui, d'accord. Mais alors pourquoi l'installer quand même? C'est inutile, et si on décide d'en avoir besoin, on peut toujours le faire plus tard.
En tous cas, moi , sudo ne va me servir à rien, c'est clair !
après avoir lu l'opinion du wiki à "why not sudo?" voilà quelques mois, suite à une discussion sur ce forum, je l'ai désinstallé et j'ai ainsi mis fin à une habitude héritée de mon incursion chez Ubuntu. Ça ne m'a créé aucun problème d'adaptation:
Note that, historically, all Unix-like systems worked perfectly even before "sudo" was invented. Moreover, having a system without sudo could still give security benefits, since the sudo package could be affected by security bugs, as any additional part of the system.
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors-ligne

L'utilisation de sudo à la place de su root c'est répandu comme une plante invasive, à tel point qu'on voit quasiement partout dans les forums linux les commandes à exécuter en root précédée de sudo au lieu de #.
RpiOS à aussi adopté sudo ...
Heureusement une poignée d'irréductibles debianeux résiste encore et toujours à l'envahisseur :)
Avatar de l’utilisateur
zargos
Membre
Membre
Messages : 197
Inscription : 07 juil. 2023, 13:34
Status : Hors-ligne

Suso a une réelle utilité sur des systèmes multi-utilisateurs ou des serveurs multi-admins.
Il permet de déterminer qui peut utiliser quoi et comment et surtout il trace tout dans les logs.
Et bien sur, car c'est l'objectif initial, il permet déviter d'avoir plusieurs utilisateurs posseder le mot de passe root.

En réalisant le hardening de la commande su cité plus haut, impossible de pouvoir faire sudo su, car il faut etre dans le groupe sugroup (ou autre) qui a été définit dans pam.d.

mais si on est utilisateur unique sudo n'a pas d'intérêt effectivement.

Ne pas utiliser sudo sur un système multiutilisateurs et sans sécuriser la commande su, c'est par contre une mauvaise idée. D'autantg qu''ern prime, sudo est utilisable avec LDAP, et donc permet une utilisation dynamique des configurations.

C'est d'ailleurs typiquement cette architecture qui avait été mise en place au sein de Bouygues hébergeur (près de 2000 serveurs sous différents unix) dans la deuxième moitié des années 2000 (2005-2010).
Répondre