1 votes

Accorder à php sudo acsess

J'essaie d'accorder à php un accès sudo (pour le montage automatisé de partages). J'ai réussi à accorder l'accès sudo à php sur l'un de mes systèmes en ajoutant daemond à la liste des sudo via

su --login -c 'visudo'

Il contient donc maintenant le daemond comme :

daemon  ALL=(ALL)  NOPASSWD: ALL

mais lorsque j'essaie de lancer un simple script php script :

<?php
echo "\nfirst: ";
echo shell_exec("whoami");
echo "\nsecond: ";
echo shell_exec("sudo ls");
?>

J'obtiens les résultats :

first: daemon
second:

C'est-à-dire qu'à chaque fois que j'utilise shell_exec avec sudo dans la commande, rien n'est renvoyé ou excité. Comment puis-je accorder à php l'accès sudo.

2voto

Matt Points 256

Vérifiez le journal des erreurs de votre serveur web... Je parie que vous obtenez une erreur du type :

# tail -1 /var/log/httpd/error_log
sudo: sorry, you must have a tty to run sudo

Si c'est le cas, essayez de modifier votre fichier sudoers et changez/supprimez la ligne requiretty :

# grep requiretty /etc/sudoers
Defaults    requiretty

D'un autre côté, si vous essayez simplement de monter et de partager automatiquement quelque chose, autofs/automount peut être intéressant à étudier.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X