Téléchargement
illégal
Posez votre question Signaler

Problème avec sudo et chmod [Résolu]

zrari_h 47Messages postés 11 février 2008Date d'inscription 2 novembre 2010Dernière intervention - Dernière réponse le 21 mai 2009 à 12:59
Bonjour,
J'ai une application qui manipule des périphériques sur mon PC, pour la lancer il faut alors la lancer en Sudo. Jusqu'à ici j'ai pas de problème. Cette application fait aussi une partie serveur qui tourne dans le démarrage de mon appli. Une application client doit être capable de la lancer via un socket et se connecter dessus. Pour celà il faut que l'appli client lance l'appli serveur en sudo, je vois pas de solution pour faire à part chmod +s mon_appli... Et j'ai pas toujours les bons droit comme ci je la lance en sudo!!! Merci d'avance pour votre aide c'est très urgent!!! Encore merci
Lire la suite 

Problème avec sudo et chmod »

8 réponses
Réponse
+2
moins plus
Salut,

Donc quand n'importe quel utilisateur lance ce programme il prend tous les droits de son propriétaire temporairement et que sur ce fichier. Donc il le lance en root!!!

Pas tout à fait.
Un processus à plusieurs UID (UserIDentifier)
UID réel - c'est l'UID de l'utilisateur qui a lancer la demande
UID effectif - c'est l'UID qui correspond aux privilèges accordés aux processus
UID sauvé - est une copie de l'ancien UID effectif lorsqu'il est modifié par un processus.

Donc dans le cas de sudo l'utilisateur ne lance pas en root la commande mais en tant que lui même (je parle d'utilisateur).
Mais sudo a des droits d'endossement, plus exact SetUID (voir le s en gras dans la commande ls -l )
lami20j@debian:~$ ls -l /usr/bin/sudo
-rwsr-xr-x 2 root root 113916 jan 27 19:57 /usr/bin/sudo

Que se passe-t-il?
L'utilisateur lance la commande donc l'UID réel de processus est l'UID de l'utilisateur qui a lancé la commande.
Le kernel(noyau) va effectuer une vérification de l'UID effectif du processus, pour voir s'il a les privilèges nécessaires. Vu que le SetUID est positionné le kernel permet l'exécution de la commande.
Ajouter un commentaire
Réponse
+0
moins plus
qq1 peut m'aidez svp, c'est très urgent... Merci
Ajouter un commentaire
Réponse
+0
moins plus
Merci à tous ceux qui m'ont aidé sur ce forum, j'ai trouvé la solution:

Il faut modifié le propriétaire du fichier à root avec:
sudo chown root mon_appli

Après il faut rajouté +s sur les droits de ce fichiers avec:
sudo chmod +s mon_appli

Donc quand n'importe quel utilisateur lance ce programme il prend tous les droits de son propriétaire temporairement et que sur ce fichier. Donc il le lance en root!!!

Merci tlm c'est très sympa!!!
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

Merci à toi pour la solution.

PS. Tu as trouvé la solution par toi même en moins de 30 minutes, preuve qu'en cherchant un peu on trouve. Par contre t'étonner que personne n'ait répondu au bout de 10 minutes et ironiquement nous servir un "Merci tlm c'est très sympa!!!", ça c'est pas trop sympa, d'autant plus que nous ne sommes pas un distributeur de réponses !.

Sur ce, bonne journée.
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Ce que j'attendais c'était juste une réponse pas forcement la solution... Et c'est vrai que je l'ai trouvé mais j'ai du lire toute la doc de chmod, sudo et chown et j'ai perdu 30min... c'est du temps quand même... et merci pour toi d'avoir poster dans ma rubrique, au moin t'as dit qq chose et tu m'as répondu!! j'ai jamais dit que vous êtes des distrib de réponse et sache que moi aussi je fait parti des gens qui réponde!! Merci
Ajouter un commentaire
Réponse
+0
moins plus
Et c'est vrai que je l'ai trouvé mais j'ai du lire toute la doc de chmod, sudo et chown et j'ai perdu 30min... c'est du temps quand même...

Quand on apprend quelques chose ce n'est jamais du temps de perdu ;-))

PS. Rien qu'avec ce genre de phrase (réponse) tu te contredis totalement en affirmant ensuite "J'ai jamais dit que vous êtes des distrib de réponse" ;-((
Ajouter un commentaire
Réponse
+0
moins plus
Laisse tomber, l'objectif n'était pas apprendre, j'aurais le temps quand je rentrerai chez moi... mais c'était qu'il me faut une application dans le boulot et le plus rapide possibe, j'ai posé la question sur le forum et j'ai vu que personne n'a écrit (j'attendais une réponse et pas forcement une solution), ce qui est un peu dommage!! sinon c'est pas grave. Et je re dis que j'ai jamais dit que je trouverais des distrib de réponse!!

@+
Ajouter un commentaire
Réponse
+0
moins plus
Je te remercie pour ta réponse assez détaillée, ce que tu dis est vrai et est aussi structuré. Je suis tout à fait d'accord avec ce que tu dis, et pour rajouté un détail je dis que le sudo ce n'est qu'un binaire avec un SetUid qui lance un fils (avec fork) dont le nom est spécifié dans argv[1]. Du coût le fils prend les droits nécessaire quand il s'exécute. Donc je suis tout à fait d'accord avec toi!!! Merci
Ajouter un commentaire
Ce document intitulé « Problème avec sudo et chmod » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?