Pages : 1
#1 Le 28/06/2017, à 14:28
- LienRag
Configurer sudo
Quelle est la syntaxe exacte de visudo?
J'ai trouvé un truc ici mais quand j'essaie (avec visudo -f NomFichier dans /etc/sudoers.d/) je n'obtiens que des erreurs de syntaxe...
Je veux pour l'instant juste interdire à un utilisateur "toto" d'utiliser la commande su pour prendre le contrôle du compte root; de ce que je comprends la commande devrait être :
toto ALL = (root) su!
J'ai essayé à peu près toutes les variations (notamment toto ALL = (root) !su ) mais rien à faire...
Où est-ce que je me trompe?
Hors ligne
#2 Le 28/06/2017, à 15:15
- grandtoubab
Re : Configurer sudo
Salut
très casse gueule de toucher à sudoers.
ls -alrt /bin/su
-rwsr-xr-x 1 root root 40536 mai 17 13:59 /bin/su
tu retires les droits à d'execution pour other et personne ne pourra utiliser su
Dernière modification par grandtoubab (Le 28/06/2017, à 15:17)
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#3 Le 28/06/2017, à 15:19
- LienRag
Re : Configurer sudo
OK merci.
Mais j'ai oublié de préciser que c'était pour un TP et que c'est donc bien la syntaxe à utiliser pour les fichiers sudoers que je cherche...
Mais si tu peux m'expliquer pourquoi c'est si casse-gueule je veux bien aussi!
Qui plus est je ne veux pas que personne ne puisse utiliser su mais que certains utilisateurs aient des droits sudo mais pas su.
Dernière modification par LienRag (Le 28/06/2017, à 15:20)
Hors ligne
#4 Le 28/06/2017, à 15:23
- grandtoubab
Re : Configurer sudo
OK merci.
Mais j'ai oublié de préciser que c'était pour un TP et que c'est donc bien la syntaxe à utiliser pour les fichiers sudoers que je cherche...
Mais si tu peux m'expliquer pourquoi c'est si casse-gueule je veux bien aussi!Qui plus est je ne veux pas que personne ne puisse utiliser su mais que certains utilisateurs aient des droits sudo mais pas su.
https://doc.ubuntu-fr.org/sudoers
on peut facilement tout casser avec de mauvaises manipulations, il faut toujours faire -c pour checker ta syntaxe
http://manpages.ubuntu.com/manpages/pre … udo.8.html
ceux qui sont dans le groupe sudo ont le droit de faire sudo, si tu retires le user toto du groupe sudo il ne pourra plus utiliser sudo
cat /etc/group | grep sudo
Dernière modification par grandtoubab (Le 28/06/2017, à 15:27)
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#5 Le 28/06/2017, à 15:29
- LienRag
Re : Configurer sudo
OK merci.
Il y a besoin du chemin complet pour la commande su, c'est ça l'erreur que j'ai commise?
Le but (de ce premier essai) est que toto aie les droits sudo sauf sur la commande su...
Hors ligne
#6 Le 28/06/2017, à 16:23
- bruno
Re : Configurer sudo
Le but (de ce premier essai) est que toto aie les droits sudo sauf sur la commande su...
Par curiosité j’aimerais bien connaître le but de l'exercice. Parce que les commandes sudo et su sont à peu près équivalentes :
- su (Substitue User) permet d'utiliser le login shell d'un autre utilisateur et éventuellement de passer une commande avec -c ;
- sudo (Substitute User DO) permet de passer une commande en passant pour un autre utilisateur et éventuellement d'utiliser le login shell d'un autre utilisateur avec l'option -i;
Donc permettre à un utilisateur d'utiliser la commande sudo mais pas su, je ne vois pas bien l'objectif…
#7 Le 28/06/2017, à 16:30
- grandtoubab
Re : Configurer sudo
LienRag a écrit :Le but (de ce premier essai) est que toto aie les droits sudo sauf sur la commande su...
Par curiosité j’aimerais bien connaître le but de l'exercice. Parce que les commandes sudo et su sont à peu près équivalentes :
- su (Substitue User) permet d'utiliser le login shell d'un autre utilisateur et éventuellement de passer une commande avec -c ;
- sudo (Substitute User DO) permet de passer une commande en passant pour un autre utilisateur et éventuellement d'utiliser le login shell d'un autre utilisateur avec l'option -i;Donc permettre à un utilisateur d'utiliser la commande sudo mais pas su, je ne vois pas bien l'objectif…
sudo permets à un utilisateur lambda de se comporter comme root sans connaitre le mot de passe de root et pour une durée déterminée
avec su - root , il faut avoir connaissance du mot de passe de root et une fois la session ouverte on la garde
https://wiki.debian.org/fr/sudo
Dernière modification par grandtoubab (Le 28/06/2017, à 16:30)
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#8 Le 28/06/2017, à 16:37
- bruno
Re : Configurer sudo
Certes, et c'est pourquoi sudo est particulièrement utile sur un système où le compte root est verrouillé (entre autres). Mais cela ne répond pas à ma question.
Parce que à part empêcher des commandes débiles (que l'on trouve malheureusement régulièrement sur la toile) du genre :
sudo su -
cela n'empêchera nullement l'utilisateur d'ouvrir un login shell root avec :
sudo -i
Dernière modification par bruno (Le 28/06/2017, à 17:15)
#9 Le 28/06/2017, à 20:42
- LienRag
Re : Configurer sudo
Le but n'est pas d'interdire su mais d'interdire sudo su puis d'interdire sudo passwd root (i.e, d'interdire à un membre du groupe sudo de virer l'administrateur de la machine).
J'avoue que je ne connaissais pas sudo -i et qu'il va falloir que je teste...
Plus largement il s'agit de pouvoir définir finement les droits accordés à tel ou tel utilisateur, ce que justement permet sudo lorsqu'il est bien configuré.
Hors ligne
#10 Le 28/06/2017, à 20:49
- grandtoubab
Re : Configurer sudo
une recommandation qui peut t'intéresser
http://www.ssi.gouv.fr/uploads/2015/10/ … ration.pdf
7.2.2 sudo Page 42 sur 50
plus generalement http://www.ssi.gouv.fr/particulier/guid … -gnulinux/
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#11 Le 29/06/2017, à 09:05
- bruno
Re : Configurer sudo
Le but n'est pas d'interdire su mais d'interdire sudo su puis d'interdire sudo passwd root (i.e, d'interdire à un membre du groupe sudo de virer l'administrateur de la machine).
Comme je le disais la commande sudo su est stupide. Littéralement cette commande signifie : « je lance en tant que root la commande qui me permet de devenir root » ou autrement dit : « je veux devenir root pour devenir root ».
Dans la configuration par défaut d'Ubuntu un membre du groupe sudo est administrateur système avec tous les privilèges de root, voir le sudoers :
%sudo ALL=(ALL:ALL) ALL
qui indique que les membres de sudo, sur tout hôte (premier ALL), peuvent acquerir les privilèges de tout utilisateur de n'importe quel groupe (ALL:ALL) pour lancer n'importe quelle commande (dernier ALL).
Dans ce cas tu ne pourras pas empêcher un membre de ce groupe de devenir root (avec sudo -i par exemple).
Je pense que le mieux serait d'avoir un utilisateur toto qui n'est pas membre de sudo et qui n'est autorisé qu'à exécuter un certain nombre de commandes, du type :
toto ALL=(ALL:ALL) TRUC
où TRUC est une variable Cmd_Alias contenant la liste des commandes autorisées.
Concernant l'opérateur ! dans sudoers je te renvoie à man sudoers à la section « Security Notes ». C'est extrêmement délicat à manipuler.
Dernière modification par bruno (Le 29/06/2017, à 09:06)
#12 Le 30/06/2017, à 09:02
- LienRag
Re : Configurer sudo
Ah effectivement sudo -i c'est puissant...
ça peut s'interdire?
Et merci pour ton dernier conseil, je n'avais pas bien compris la syntaxe de sudoers en fait, je croyais qu'elle ne s'appliquait qu'à des utilisateurs particuliers du groupe sudo, je ne savais pas qu'on pouvait y ajouter des utilisateurs non-membres de sudo avec des droits plus limités (je pensais que les droits étaient ET et non OU).
Merci aussi grandtoubab (d'où vient ce pseudo d'ailleurs?) mais je ne comprends pas dans le PDF cette partie: 7.2.2.1
Droits d’accès
sudo est généralement installé par défaut avec des droits ouverts et permet à n’importe quel
utilisateur de l’utiliser (droit d’exécution pour tout le monde). sudo étant un exécutable privilégié et
complexe de par sa configuration, il est préférable de restreindre ses droits d’exécution à un groupe
utilisateur dédié. Cela réduit la surface d’attaque, notamment quand le système et le binaire lui-même
sont victimes de vulnérabilités exploitables par n’importe quel utilisateur (CVE-2012-0809, CVE-2012-
0864).
Par défaut seuls les membres du groupe sudo peuvent utiliser sudo, non?
Hors ligne
#13 Le 30/06/2017, à 09:58
- bruno
Re : Configurer sudo
Il faut absolument que tu lises la documentation de sudoers (man sudoers). C'est loin d'être évident à configurer et le risque de créer des failles de sécurité est grand.
À ma connaissance on ne peut pas interdire sudo -i, ou sudo -s (lire aussi man sudo), à moins d'interdire complètement sudo.
Pour ce qui est des recommandations de l'ANSSI, il vaut mieux éviter de toucher aux droits d'accès de l’exécutable sudo au risque de le rendre inutilisable. Les failles évoqués dans le document (CVE-2012-0809, CVE-2012-0864) sont corrigés sur un système à jour.
La configuration particulière à Ubuntu (voir mon message précédent) fait que les membres du groupe sudo peuvent se substituer à n'importe quel utilisateur, y compris root, pour exécuter n'importe quelle commande. Mais ce pourrait être un autre groupe, d'ailleurs il n'y pas si longtemps le groupe sudo n'existait pas et c'était le groupe admin qui était configuré dans sudoers.
Si un utilisateur qui n'est pas référencé dans sudoers via un groupe auquel il appartient ou via son nom d'utilisateur, tente d'utiliser la commande sudo, son mot de passe lui sera demandé et un message d'erreur indiquera qu'il n’apparaît pas dans le fichiers sudoers.
#14 Le 30/06/2017, à 10:05
- grandtoubab
Re : Configurer sudo
Salut
La documentation s'adresse à tous les Linux, chaque distribution peut avoir ses réglages
j'ai mis mon utilisateur lambda dans le groupe sudo, il faut déja etre certain que la distribution gère un groupe sudo
cat /etc/group | grep sudo
j'ai suivi la recommendation pour arriver à ça
ls -alrt /usr/bin/sudo
-rwsr-xr-- 1 root sudo 145040 juin 8 19:57 /usr/bin/sudo
En root, j'ai fait
chown root:sudo /usr/bin/sudo
et
chmod 4754 /usr/bin/sudo
Attention si tu ne mets pas le s tu vas te faire peur
sudo apt update
sudo: /usr/bin/sudo doit être la propriété du uid 0 et avoir le bit setuid mis
Attention je ne te dis pas de copier car si tu te trompes , bobo la tête
Et ce n'est pas inutile d'interdire l'executable, exemple avec lisa qui n'est pas dans le groupe sudo
lisa@desktop:~$ sudo -i
bash: /usr/bin/sudo: Permission non accordée
lisa@desktop:~$
lisa@desktop:~$ sudo -s
bash: /usr/bin/sudo: Permission non accordée
lisa@desktop:~$ sudo apt update
bash: /usr/bin/sudo: Permission non accordée
Dernière modification par grandtoubab (Le 30/06/2017, à 10:57)
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
Pages : 1