Executer un script en ayant les privilèges root!

Signaler
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005
-
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005
-
Pour les besoins d'execution d'un script d'ajout d'utilisateurs linux, script qui contient les deux commandes adduser et passwd, je dois aquerrir les droit root! ShareVB, que je remercie beaucoup m'a orienté vers la fonction posix_setuid()!
Le problème est quand je l'utilise j'ai un message qui me dit:
Fatal error il faut etre root pour executer cet instruction???
Quelqu'un a une idée?

7 réponses

Messages postés
182
Date d'inscription
jeudi 20 mai 2004
Statut
Membre
Dernière intervention
22 octobre 2010

pourqoi ne pas configurer simplement configurer le sudoers pour que
l'utilisateur et le droit d'effectuer les commandes adduser et password
???
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005

J 'ai fais un script avec seulement la commande posix_setuid(0); la valeur zéro etant celle de l'uid du root! J'ai modifié les valeur du pocesseur du script avec chown root et aussi j'ai fais en sorte avec chmod 4755 qu'il s'execute en ayant les privilèges root!
Tjrs le meme message d'erreur! Please, help!!!
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005

Je suis sous mandrake8.1! Stp, plus de détails sur suoers (la procèdure a suivre!)!
Merci d'avance!
Messages postés
182
Date d'inscription
jeudi 20 mai 2004
Statut
Membre
Dernière intervention
22 octobre 2010

pou le sudoers, il faut ouvrit le fichier sudoers que tu trouve
normalement dans le dossier /etc/sudoers dedans tu definit la personne
qui va utiliser ton script et tu luis donne les droitsd'utilisation



ex :

nobody ALL=(ALL)NOPASSWD: ALL

(ici je donne tous les droits a l'utilisateur nobody sans que la confirmation du mot de passe soit demander)



ensuite dans ton script tu apelle la fonction de cette maniere :

sudo adduser ....



j'espere avoir eté assez clair mais j'ai des doutes, il existe pas mal
de tuto sur le sudo je te conseil de chercher un petit peu



@+++
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005

Ah la vraiment les gars! Vous m'aidez un max!
C'est bon pour la commande adduser que j'arrive a executer avec un script PHP!
Le problème maintenant se présente pour le password!
Faut faire ce qui suit:

$passwd=popen('/usr/bin/passwd '.$user,'w');
fputs($passwd,$pass."\n");
fputs($passwd,$pass."\n");
pclose($passwd);

Le problème est qu'il faut appeller sudo passwd et non passwd directement! si je met dans le chemin /usr/bin/sudo passwd ça marche pas!

Vous avez une idée?
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005

J'ai fais style une concaténation:
exec ("sudo" . $comm) ou $comm= tout le paragraphe la de la commde $passwd=popen etc...
Le script ne fais pas d'erreur, ajoute bien le user, mais le passe ne marche pas!
Messages postés
23
Date d'inscription
lundi 31 octobre 2005
Statut
Membre
Dernière intervention
19 décembre 2005

C'est bon!
je fais maintenant ce qui suie pour le passwd

$srting="username password password"
puis je fais un
exec("sudo autopasswd" .$string,result);
et c'est bon!
Merci tout le monde , merci a toi Renus (pour m'avoir appris a suddoyer :d) JE VOUS AIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIME!!!