15 votos

¿Cómo se realiza acciones root de root no cuenta?

Quiero ser capaz de reiniciar los servicios de un script php. corriendo bajo la cuenta de usuario-www.

¿Qué es el modo recomendado para realizar estas acciones?

Reconocimiento yo sitúo a crear un archivo con le ordena, leído por CRON, pero me pica la solución.

Lo que estoy pensando es un servicio pequeño, corriendo bajo root, permitiendo predefinidos "métodos" así no se puede ejecutar acciones arbitrarias root.

¿Cualquier herramienta para esto?

27voto

MadHatter Puntos 44059

Usted podría reinventar la rueda, pero sinceramente, yo la uso sin contraseña sudo para esto. Por ejemplo, mi sistema de monitoreo debe ser capaz de ejecutar un comando para comprobar el hardware RAID. Esto requiere privilegios de root, pero no quiero que se ejecute todo el sistema de monitoreo como de la root, así que en lugar que tengo en sudoers una línea que dice:

nagios  ALL=(root) NOPASSWD: /usr/lib/nagios/plugins/check_md_raid

y, a continuación, ejecute el comando sudo /usr/lib/nagios/plugins/check_md_raid como el seguimiento del usuario, cuando siento la necesidad de comprobar la RAID.

Usted podría tener un sudoers línea que dice

www-user    ALL=(root) NOPASSWD: /etc/rc.d/init.d/myservice

luego tenemos el php ejecutar sudo /etc/rc.d/init.d/myservice restart.

6voto

Matteo Puntos 427

Echa un vistazo a sudo: permite para especificar las acciones que se pueden realizar como otro usuario (root en tu caso).

Por ejemplo puede agregar a su /etc/sudoers (no edite el archivo utilizar directamente visudo )

www-user-account ALL= NOPASSWD: /usr/bin/mypredefinedaction

Ver man sudo para los detalles y la sintaxis del archivo

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: