Выполнять команды root через PHP
У меня есть сервер CentOS 5.7 linux и я использую php5.3.x.
В системе pfSense вы можете перезапустить службы, для которых требуются права root, с помощью веб-страницы php.
Я пытаюсь сделать что-то подобное, я написал PHP-код для выполнения команд оболочки. Например, чтобы перезапустить службу sshd:
<?php
exec('/sbin/service sshd restart');
?>
и я попытался выполнить эту команду с помощью функции exec, но для этого требуется разрешение root, но у нас есть права доступа apache.
Я столкнулся с несколькими решениями:
«запускать apache с пользователем root» действительно небезопасно. Я не хочу этого делать."apache ALL = NOPASSWD: / sbin / service to / etc / sudoers" я пытался, но проблема все еще есть.Любые другие решения? Спасибо за ответы.
сейчас .. это интересно. я попробовал @refp post, и это сработало на моем локальном сервере Ubuntu. Но когда я попробовал то же самое на моем VOS-сервере CenOS. Это не работает. И это журнал ошибок apache "rm: не удается удалить` / var / lock / subsys / vsftpd ': разрешение отклонено "