Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/06/2017, à 15: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, à 16: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, à 16: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, à 16: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, à 16:20)

Hors ligne

#4 Le 28/06/2017, à 16:23

grandtoubab

Re : Configurer sudo

LienRag a écrit :

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, à 16: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, à 16: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, à 17:23

bruno

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…

Hors ligne

#7 Le 28/06/2017, à 17:30

grandtoubab

Re : Configurer sudo

bruno a écrit :
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, à 17: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, à 17: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, à 18:15)

Hors ligne

#9 Le 28/06/2017, à 21: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, à 21: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, à 10: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, à 10:06)

Hors ligne

#12 Le 30/06/2017, à 10: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

PDF a écrit :

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, à 10: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.

Hors ligne

#14 Le 30/06/2017, à 11: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, à 11: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