Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
[Système/PHP/HTML] Problème de lancement de commande "useradd" / "userdel"
Envoyé par: Iloyo

Bonjour,

N'ayant pas trouver de reponse positive sur le forum de fedora, on m'a conseiller de poster mon problème sur ce forum, alors voila :

Comme le sujet l'indique, je tente de mettre en place une page web de création d'utilisateur sur mon serveur fedora. Mon souci, est que ma commande de création (ou de suppression) sous php ne se lance pas.

J'ai essayé les commandes :
$resultat=exec($cmd);
$resultat=system($cmd,$num);
$resultat=shell_exec($cmd);

avec $cmd="useradd -s /sbin/nologin -d [Repertoire]";
ou même $cmd="sudo useradd -s /sbin/nologin -d [Repertoire]";
voir même en utilisant le chemin complet : /usr/sbin/useradd

Voici l'extrait de mon script php :
               [...]
               $cmd = "sudo /usr/sbin/useradd -s /sbin/nologin -d /FTP/";         
               $cmd .=$groupe;
               $cmd .="/";
               $cmd .=$id;
               $cmd .=" ";
               $cmd .=$id; 
               $res=system($cmd,$num);
            echo "$res";    
                if ( $res!=0 )
                {
            echo "<br><b><big><big>Successful!!</big></big></b><br>";
        }
        else
        {
            echo "<br><b><big><big>Error</big></big></b><br>";
        }
               [...]

avec $id, $groupe des paramètres passer par methode GET depuis une page html !

En utilisant n'importe quelle commande ( $res=exec($cmd); , $res=system($cmd,$num); ou $res=shell_exec($cmd); ) le résultat retourné sur ma page est nul : hormis le message "Error" et quelques lignes écritent en html!


En pensant que cela peut venir d'un problème de droits, j'ai configuré pour des tests les utilisateurs suivants dans le sudoers:

User_Alias PHP = apache, nobody
 
Cmnd_Alias CREATE_USERS = /usr/sbin/useradd
Cmnd_Alias DELETE_USERS = /usr/sbin/userdel
 
PHP     ALL=(ALL)       NOPASSWD: CREATE_USERS, DELETE_USERS

A la suite d'une erreur : "sudo: sorry, you must have a tty to run sudo" (afficher dans /etc/httpd/logs/error_log), on ma conseillé de commenter "requiretty" dans le sudoers. j'ai donc la ligne "#Defaults requiretty" dans /etc/sudoers.

Avec tout cela, je n'ai eu aucun résultat positif... peut être sauriez vous m'aider!??

Merci par avance pour votre investissement à mon problème!

Poste le Thursday 3 January 2008 11:57:54
Répondre     Citer    
Re: [Système/PHP/HTML] Problème de lancement de commande "useradd" / "userdel"

On pourrait peut-être utiliser super au lieu de sudo. J'ai l'impression (pas vérifiée, donc je me trompe peut-être) que super n'a pas besoin d'un tty.

----

Basile STARYNKEVITCH

Membre de l'APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!

Projet logiciel libre: RefPerSys

Poste le Thursday 3 January 2008 12:47:44
Répondre     Citer    
Re: [Système/PHP/HTML] Problème de lancement de commande "useradd" / "userdel"
Envoyé par: Iloyo

La commande super n'existe pas... :-(

Poste le Friday 4 January 2008 10:06:51
Répondre     Citer    
Re: [Système/PHP/HTML] Problème de lancement de commande "useradd" / "userdel"

Citation
Iloyo
La commande super n'existe pas...

Tu peux l'installer (ou utiliser sudo en le configurant)?


----

Basile STARYNKEVITCH

Membre de l'APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!

Projet logiciel libre: RefPerSys

Poste le Friday 4 January 2008 10:10:53
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
[Système/PHP/HTML] Problème de lancement de commande "useradd" / "userdel"
Posez dans ce forum les questions qui ne trouvent pas place dans les autres...

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons