toto@debian:~$ cat /etc/sudoers
cat: /etc/sudoers: Permission non accordée
toto@debian:~$ ls -alrt /etc/sudoers
-r--r----- 1 root root 669 janv. 11 2016 /etc/sudoers
toto@debian:~$ sudo cat /etc/sudoers
[sudo] password for toto:
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
voila ce qui se passe cher moi, j’ai jamais bricolé sudoers
Oui, cela peut en effet être intéressant dans la même optique de durcissement, mais étant donné que le lancement de synaptic me demande le pass user et non pas root, cela fonctionne normalement !
Juste pour tester, je vais tester à mettre le binaire ‘synaptic-kexec’ appartenant au groupe ‘sudo’ … voir s’il réagit pareil - la réponse est : oui !
La question, intéressante, qui suit, est : si je me mets à obliger mon système à ce que seuls les utilisateurs du groupe ‘sudo’, soient les seuls, hormis root, à utiliser les commandes ‘su’, ‘sudo’, ‘synaptic’ … pourquoi ne pas le faire pour toutes les commandes 'apt’, 'dpkg’ … ?!**
Quoiqu’il en soit mon problème étant qu’en mode terminal, je ne peux pas utiliser la commande ‘sudo’ dans l’état de l’art … mais la commande ‘su’ fonctionne …
Ce qui reviendrait à avoir “le meilleur des deux mondes”, à savoir :
en mode terminal, cela passe par ‘su’ …
en mode fenêtrée, c’est ‘sudo’ qui prend la main …
Ahhh, si quelques uns voulaient bien tester et faire le même cheminement - infirmer, affirmer, conclure …
c’est bien toi qui indique que le comportement des deux commandes est différents,
il faut tout mettre d’ aplomb en termes de groupe et droits avant de comparer et ne rien bricoler dans sudoers
Là, tu as faux … relis la recommandation 58 de l’ANSSI … on dirait que tu t’es arrêté à la 57
je l’ai simplement intégré dans un fichier /etc/sudoers.d/defaults
Le fichier /etc/sudoers étant identique à l’original !
Quant à l’usage de ‘dpkg-statoverride’, cela fait partie des recommandations de durcissement que tu trouveras en cherchant sur le web sur les mots “dpkg_statoverride /bin/su harden” (donnée principalement pour ubuntu, appliquée aussi à debian) …
debian:~$ apt update
W: chmod 0700 of directory /var/lib/apt/lists/partial failed - SetupAPTPartialDirectory (1: Opération non permise)
E: Impossible d'ouvrir le fichier verrou /var/lib/apt/lists/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire /var/lib/apt/lists/
W: Problème de suppression du lien /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission non accordée)
W: Problème de suppression du lien /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission non accordée)
E: Impossible d'ouvrir le fichier verrou /var/lib/dpkg/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire d'administration (/var/lib/dpkg/). Avez-vous les privilèges du superutilisateur ?
Le contenu du fichier /etc/sudoers.d/defaults est le contenu de la recommandation 58 ANSSI (c’est moi qui l’ai créé, selon les recommandations liées à ‘sudoers’, et l’est nommé ainsi)
Beh, déjà, concernant ‘su’, et ‘sudo’, tu peux leur signifier des droits en 4750, parce que le reste du monde n’a pas à avoir des droits dessus … et, tu peux même faire de même pour ‘gksu’ …
Et, si tu veux que les droits soient permanents, tu utilises la commande ‘dpkg-statoverride’ - ce qui fait que même lors de màj de ses commandes les droits dessus auront été “figées” …
Tu peux aller plus loin en signifier l’appartenance root:sudo …
Pas forcément… Pour un usage basique de sudo qui se limite à permettre à un ou plusieurs admins de lancer n’importe quelle commande en root, oui. Dans d’autre cas, on peut vouloir dire que tel user peut lancer telle commande en temps que tel autre user (éventuellement sans mot de passe), et là, c’est plus si évident.
Effectivement, tu m’as fait découvrir cette commande, mais c’est la bonne façon de définir des permissions personnalisées sur su et sudo (dans la même idée, il y a dpkg-divert pour déplacer un fichier installé via dpkg / apt).
Pour le problème initial, dpkg-statoverride --update --add root sudo 4750 /usr/bin/sudo marche bien sur ma debian jessie (sans aucune autre modif de la conf de sudo qui pourrait interférer). Je ne vois pas de raison pour laquelle utiliser un autre groupe y changerait quoi que ce soit, à part que ça me semble moins clair.
En ajoutant les recommendations de l’ANSSI, dans /etc/sudoers.d/anssi :
$ sudo ls
fichier1 (donc tout va bien)
$ sudo apt-get update
Failed to exec method /usr/lib/apt/methods/http
E: Method http has died unexpectedly!
E: Le sous-processus http a renvoyé un code d'erreur (100)
E: La méthode /usr/lib/apt/methods/http n'a pas démarré correctement
(en vrai, j’ai plus de messages, mais peu importe…)
Je pense que le problème vient de noexec dans la conf de l’ANSSI. Et après un petit test, je confirme que apt-get update marche si on l’enlève
Pour synaptic, et autres trucs graphiques, je ne sais pas, j’administre ma machine en console et ce que je dis suit des tests de 5 minutes donc je te laisse retester, d’abord en terminal (ls puis apt), puis en graphique pour voir ce qui marche…
Ahhh, mais, perso, c’est clair -
‘sudo’ en mode console, il ne veut pas de mon mot-de-passe utilisateur … mais je peux exécuter ‘su’ depuis mon user principale …
et, en mode graphique, quand est demandé le mot-de-passe admin, il me prend celui de mon user, mais pas root !
Et, mon user principal est bien dans le groupe ‘sudo’ …
La seule diff est que j’ai appliqué les droits du groupe ‘sudo’ sur les commandes ‘su’, et ‘sudo’, de manière décrite plus haut
Je retiens quand même l’idée de la présence de l’option ‘noexec’ ou son absence dans le fichiers ‘sudoers’ … cela est pertinent !
Après, ce mode opératoire ne me dérange aucunément … c’est juste que c’est légèrement différent de celui attendu
Que tout soit sûr, tu t’es bien reloggué depuis que tu as ajouté ton user dans sudo ?
id renvoie bien qu’il est dans le groupe sudo ?
Tu as bien -rwsr-x--- 1 root sudo 157760 janv. 11 2016 /usr/bin/sudo
et %sudo ALL=(ALL:ALL) ALL dans /etc/sudoers ou /etc/sudoers.d/* ?
Si tout est bien comme ça, ça semble anormal que tu ne puisses pas faire sudo ls / (sauf si ton mdp n’est pas bon, mais j’ose imaginer que c’est pas le pb…)
Dans ca cas, poste le message que tu as avec sudo ls /.
PS : Désolé si tu as déjà répondu à certaines questions, mais je veux être sûr que tu n’aies rien modifié depuis et il y a un peu de spam dans le fil donc j’ai du mal à tout retrouver…