Bonjour à tous,
Désolé si je me suis trompé de forum, mais le choix à été difficile.
Bon alors je commence :
J'ai un serveur dédié chez OVH ou plusieurs sites sont hebergé.
Je suis en train de faire un script PHP qui permettrait d'ajouter des boite mail pour un des domaines choisi.
j'ai donc utilisé la fonction :
exec('/home/vpopmail/bin/vadduser <a href="mailto:aaaa@bbbb.ccc">aaaa@bbbb.ccc</a> motdepasse');
Cette fonction ne marche pas, tout à fait logique, car quand je tape :
il me dit que j'execute en tant que "nobody", car apache appartient au groupe "nobody".
Hors le fichier "/home/vpopmail/domains/bbbb.cc/vpasswd" est un fichier modifiable uniquement par le "root".
J'ai donc essayé avec un sudo :
exec("sudo /home/vpopmail/bin/vadduser <a href="mailto:aaaa@bbbb.ccc">aaaa@bbbb.ccc</a> motdepasse");
Mais bien évidemment, la fonction ne marche pas, car pour effectuer un "sudo" il faut être autorisé dans le sudoers...
j'ai donc modifié le "sudoers" en ajoutant la ligne :
nobody ALL=(ALL) NOPASSWD:ALL
La tout fonctionne nickel, par contre, niveau securité c'est un beau 0 pointé...
Car tout les propriétaires des sites de mon serveur peuvent s'il le souhaite, executé un sudo eux aussi, mais qui peux être beaucoup plus dangereux...
Je voudrais savoir s'il y a un moyen, d'ajouter un compte mail sans trop de risque de sécurité ???
Ma technique pour ajouté un compte pop est peu être carrement absurde, j'aurai besoin d'eclaircissement, car la, je sèche...
Ou alors ma technique est bonne, mais je dois executer apache sous un autre groupe que "nobody", puis attribuer un mot de passe a ce groupe, et enfin effectuer un :
exec("sudo -p motdepassedugroupe /home/vpopmail/bin/vadduser <a href="mailto:aaaa@bbbb.ccc">aaaa@bbbb.ccc</a> motdepasse");
Merci d'avance
Partager