El Jueves, 7 de Septiembre de 2006 16:04, enediel gonzalez escribió:
> >Llegado el eventualisimo caso de eso, el administrador de esos servidores
> >debe conocer la contrase�a de Ruth y apagarla
> >via ssh o bien llamarte a ti o a quien ocupe el cargo de $DEITY en esos
> >servidores para que lo realice.
>
> no es el unico modo de hacerlo.
>
> esta programado para que al momento de tu seleccionar apagar el servidor,
> se genere un fichero vacio en una carpeta, y con un proceso en el cron que
> revisa la existencia de este fichero, al detectar que existe, lo borra y es
> el que realmente apaga la maquina.


Hola, llego tarde a este hilo y tal vez me pierda algo. No obstante leyendo el 
párrafo de arriba se me ocurre proponer un método más eficaz y seguro.

El objetivo entiendo que es permitir ciertas tareas administrativas (como 
apagar el ordenador) desde apache.

Yo propondría usar editar /etc/sudoers con el comando "visudo" y dejar una 
línea así por cada comando adminsistrativo que deseemos conceder al usuario 
que ejecuta apache:

  www-data localhost = NOPASSWD: /sbin/halt

Tal vez se puedan poner más comandos en la misma línea, no lo sé, el manual de 
sudoers lo explicará mejor.

Con esa línea permitimos a "www-data" hacer un "sudo /sbin/halt" y el sistema 
no le pedirá password para ejecutarlo. Importante recalcar que el comando que 
se debe ejecutar desde la web (vía PHP "system" o equivalentes) debe 
tener "sudo" delante.

Entiendo que esta forma es más "elegante" y efectiva que el tema de 
generar/borrar un archivo y que una tarea de cron apague el sistema en 
consecuencia.

Recordemos también que el usuario www-data no tiene password, me refiero a que 
nadie se podrá loguear como www-data y ejecutar el comando sudo tal.


Saludos.



-- 
Iñaki

Responder a