Retroceder   Foros del Web > Administración de sitios web > Web Hosting > Servidores Dedicados, VPS y colocación

Respuesta
 
Herramientas Desplegado
Antiguo 18-sep-2007, 08:49   #1 (permalink)
CodesMaster no se puede cailificar en este momento
 
Fecha de Ingreso: octubre-2006
Ubicación: Barcelona
Mensajes: 94
Ejecutar system() o exec() y permisos

Buenas,
Estoy intentando hacer unos paneles en PHP para gobernar segun que programas desde web. Entonces, las funciones basicas que me interesarian seria el de encender y apagar de los programas, en un servidor dedicado lo que diriamos que es ./PROGRAMA . Desde PHP podemos hacerlo con la funcion system() o exec() .

Entonces mi pregunta es, yo el script de PHP donde lo hago lo meto en /var/www para que apache lo ejecute y yo desde una URL pueda controlarlo remotamente desde donde quiera. Pero ese Script se ejecuta como root? o con que permisos ejecuta ese comando en cocnreto? ( En el caso de que ese programa que quiera ejecutar este en /home/programa)

Lo que quiero saber con esto hasta que punto puede ser perjudicial para mi seguridad, y si tengo que poner algun tipo de permisos especiales para poderlo ejecutar ya que hasta la fecha no se me ejecuta jeje.
CodesMaster está desconectado   Responder Citando
Antiguo 18-sep-2007, 08:59   #2 (permalink)
MinervaH ha deshabilitado el karma
 
Avatar de MinervaH
 
Fecha de Ingreso: mayo-2004
Mensajes: 1.856
Re: Ejecutar system() o exec() y permisos

Cita:
Iniciado por CodesMaster Ver Mensaje
...yo el script de PHP donde lo hago lo meto en /var/www para que apache lo ejecute...
Entonces se ejecutará con el usuario con el que corra Apache tus scripts PHP, que puede ser nobody o tu usuario si está instalado PHPSuexec o similares en el servidor.
__________________
Minerva Hosting - Obsesionados con la calidad
Elegidos mejor web de hosting de 2005 y 2006
Hosting • Dominios • Backup remoto • Telefonía IP
MinervaH esta en línea ahora   Responder Citando
Antiguo 18-sep-2007, 09:30   #3 (permalink)
CodesMaster no se puede cailificar en este momento
 
Fecha de Ingreso: octubre-2006
Ubicación: Barcelona
Mensajes: 94
Re: Ejecutar system() o exec() y permisos

Entonces para poder utilizar esas funciones necesito PHPSuexec instalado en el servidor? ( el problema que probandolo no se me ejecuta ni me hace ls por eso lo decia)

Otra cuestion que queria saber es a cuanto seguridad...que opinas? pero relamente si quieres dar un servicios mas grafico creando tus propios paneles para algun tipo de servicio debes correr el riesgo no? de todas formas, el instalar ese componente haria que cualquier persona con un hosting en el dedicado pueda ejecutar algun tipo de programa del dedicado ,no? se ejecutaria como nobody como dices y tendria acceso, luego puede sacar el resultado en una variable y mostrarla con un simple echo.

Claro es que que me puedan ejecutar un cat ARCHIVO por ejemplo no me interesa jejej. Bueno espero soluciones o sugerencias en cuanto seguridad.

Gracias :D
CodesMaster está desconectado   Responder Citando
Antiguo 18-sep-2007, 11:28   #4 (permalink)
MinervaH ha deshabilitado el karma
 
Avatar de MinervaH
 
Fecha de Ingreso: mayo-2004
Mensajes: 1.856
Re: Ejecutar system() o exec() y permisos

No, no hace falta instalarlo. Si PHPSuexec está instalado, o lo instalas, tus scripts correrán con tu usuario, si no lo está con el usuario con el que esté instalado Apache, nobody o httpd, depende de la distribución de Linux o del panel de control que tengas.

Si tus scripts están bien programados no deberían suponer un riesgo de seguridad, procura hacerlos lo más seguros posible, busca en Internet información sobre PHP y seguridad, hay mucha información. Aquí también hay un subforo sobre PHP, puedes mirar si se ha tratado este tema antes o publicar allí un mensaje pidiendo opiniones.

También deberías comprobar que las funciones que necesites usar, system() o exec() no estén deshabilitadas en la configuración de PHP en el servidor. Por tu mensaje no me queda claro si tienes tu propio servidor o hosting en algún proveedor de hosting.
__________________
Minerva Hosting - Obsesionados con la calidad
Elegidos mejor web de hosting de 2005 y 2006
Hosting • Dominios • Backup remoto • Telefonía IP
MinervaH esta en línea ahora   Responder Citando
Antiguo 18-sep-2007, 13:11   #5 (permalink)
Moderador Web Hosting
WebTech llegará a ser famoso muy prontoWebTech llegará a ser famoso muy pronto
 
Avatar de WebTech
 
Fecha de Ingreso: octubre-2005
Ubicación: Infranetworking.com
Mensajes: 2.538
Enviar un mensaje por MSN a WebTech
Re: Ejecutar system() o exec() y permisos

Siempre se recomienda tener esas (además de otras) funciones deshabilitadas, claro que hay ciertos casos como este en que debes usarlas, pero siempre hay alternativas para tratar de evitar el uso de funciones peligrosas.

Como comentó MinervaH, corren como el usuario, o como nobody, no hay más vueltas

Saludos,
__________________
Infranetworking.com - Hosting, Resellers y Servidores Dedicados
WebTech está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 15:39.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93