I need to execute a script via php (php5.xx), server running apache2 (Ubuntu 10.04). The script needs to be executed as another user.
I added following lines to
Cmnd_Alias SECURE_SVN_UPDATE = /path_to_script/just_svn_update.sh #www-data ALL=(ALL,!root,!#0) NOPASSWD: SECURE_SVN_UPDATE www-data ALL=(ALL) NOPASSWD: SECURE_SVN_UPDATE
(I tried both lines)
And in PHP, I call
exec("sudo -u theuser SECURE_SVN_UPDATE")
I get the error
sudo: no tty present and no askpass program specified
I tried setting
sudoers file, but after that, running the command from PHP gives error:
sudo: 3 incorrect password attempts.
Can someone please tell me how to fix this OR a method to achieve it without compromising security. (I want apache to be able to execute just that script as another user, nothing else).