Ejecutar comandos raíz a través de PHP

Tengo un servidor Linux CentOS 5.7 y uso php5.3.x.

En un sistema pfSense, puede reiniciar los servicios que requieren permisos de root mediante una página web php.

Estoy tratando de hacer algo similar, he escrito un código php para ejecutar comandos de shell. Por ejemplo, para reiniciar el servicio sshd:

<?php
exec('/sbin/service sshd restart');
?>

e intenté ejecutar ese comando a través de la función exec, pero necesita permiso de root, pero tenemos una autoridad de usuario apache.

He encontrado algunas soluciones:

"ejecutar apache con usuario root" realmente inseguro. No quiero hacer eso. "apache ALL = NOPASSWD: / sbin / service to / etc / sudoers" Lo intenté pero sigo teniendo un problema.

¿Alguna otra solución? Gracias por las respuestas.

ahora .. es interesante. Intenté @refp post y funcionó en mi servidor ubuntu local. Pero cuando intenté lo mismo en mi servidor cenOS vps. No funciona. Y ese es el registro de errores de Apache "rm: no se puede eliminar` / var / lock / subsys / vsftpd ': Permiso denegado "

Respuestas a la pregunta(10)

Su respuesta a la pregunta