Foros del Web » Programando para Internet » PHP »

Como lanzar bash con usuario root

Estas en el tema de Como lanzar bash con usuario root en el foro de PHP en Foros del Web. Hola, alguien sabe como puedo lanzar un ejecutable con usuario root desde un fichero alojado en la web?. El usuario que lanza desde el php ...
  #1 (permalink)  
Antiguo 26/03/2012, 01:36
 
Fecha de Ingreso: marzo-2007
Mensajes: 89
Antigüedad: 12 años, 5 meses
Puntos: 0
Como lanzar bash con usuario root

Hola, alguien sabe como puedo lanzar un ejecutable con usuario root desde un fichero alojado en la web?. El usuario que lanza desde el php en mi caso es "apache" y quiero que para un fichero en concreto use permisos de root.

No se si esto se hace en la llamada al bash o donde...Mi llamada es la siguiente:

Código PHP:
 exec('bash /test/pruebaSync',$r); 
 
print_r($r); 
Esto lanza bien el fichero pero al no lanzarlo con root no hace bien lo que debe hacer...
  #2 (permalink)  
Antiguo 26/03/2012, 02:13
 
Fecha de Ingreso: marzo-2007
Mensajes: 89
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Como lanzar bash con usuario root

También he probado:

Código PHP:
shell_exec('sudo passROOT bash /test/pruebaSync'); 
pero nada... Sin embargo si me voy al terminal inicio como root y lanzo:

$# bash /test/pruebaSync

Funciona correctamente :S
  #3 (permalink)  
Antiguo 26/03/2012, 02:58
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 15 años
Puntos: 71
Respuesta: Como lanzar bash con usuario root

Para usar sudo, el usuario que lo emplea debe estar en el grupo sudo, o usar el fichero /etc/sudoers.
Ademas de eso, luego para usarlo en un bash desde php, no se como sería.
  #4 (permalink)  
Antiguo 26/03/2012, 04:37
 
Fecha de Ingreso: marzo-2007
Mensajes: 89
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Como lanzar bash con usuario root

Gracias DooBie.

Puedes por favor decirme como podría añadir una nueva linea en "visudo" en el que le de permisos al usuario "apache" para lanzar un fichero como root?. Me gustaría que fuera solo sobre ese fichero.

esto no se puede hacer?

Porque si lo pongo en el grupo de sudo, imagino que tendrá privilegios de root no? En este caso cada vez que lance "sudo..." tendría que ponerle el pass tal y como pongo el ejemplo arriba (sudo passROOT bash /test/pruebaSync)? Perdona tantas preguntas pero soy algo novato en esto...

Muchas gracias de nuevo!

Etiquetas: bash, lanzar, root, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:22.