Foros del Web » Programando para Internet » PHP »

ayuda con exec()

Estas en el tema de ayuda con exec() en el foro de PHP en Foros del Web. Hola a todos lo que voy a planter es algo que a lomejor no tine qu ver con este foro pero en parte si estoy ...
  #1 (permalink)  
Antiguo 24/12/2005, 10:26
Avatar de alexjnm  
Fecha de Ingreso: octubre-2004
Ubicación: cuba
Mensajes: 218
Antigüedad: 13 años, 1 mes
Puntos: 1
ayuda con exec()

Hola a todos lo que voy a planter es algo que a lomejor no tine qu ver con este foro pero en parte si

estoy haciendo un sistema de administracion de usurios en linux para la empresa en la que trabajo, ya casi esta echo pero el preoblema es que lo estaba probando en redhat 9 y cuando lo puese donde realmente va tinen centos 4.1

el rror esta en que cuando apche hace sudo para correr el comando de useradd en la pantalla del servidor me da un error como que no tine autorisacion para correr script, ha ya apache esta puesto en etc/suder

Ha algun otro comando ademas de exec() para poder hacer eso y ver como esquibo ese error ??

salu2 alex
que tengan un feliz fin de año y una feliz noche buena
__________________
__________________________________________________ _________
A beses el camino mas largo es la solución mas eficaz :)
  #2 (permalink)  
Antiguo 26/12/2005, 06:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
No .. la solución no es usar otra función de PHP sino en dar permisos al usuario que corras PHP en ese servidor para que pueda ejecutar comandos en el Shell de ese S.O.

No sé como ejecutas PHP en esos servidores .. pero para este tipo de casos usar PHP en modo CGI por ejemplo hace más controlable a que "usuario" le dás permiso para ejecutar tal comando. Con PHP como "módulo" .. (de Apache) los permisos deberías darselos al usuario que corra Apache .. tal vez eso sea más "peligroso".

Consulta estos detalles en los foros de "Linux".

Otra cosa que puedes hacer para no comprometer la seguridad de tu sistema sería crear scripts en otros lenguajes como Perl o equivalentes, darle permisos de ejecución a esos scripts Perl (o el lenguaje que uses) y desde PHP simplemente llamar a ejecutar a esos scripts. La validación y trabajo "duro" de sistema (crear tus usuarios) lo haría el script en Perl .. (mejor controlable a nivel de darle permisos).

Otro detalle sería revisar para que realmente necesitas crear usuarios en ese S.O. de ese servidor. Muchas veces se necesita esto por ejemplo para crear cuentas de e-mail o FTP sobre uno de estos servidores. No sé si será este tu caso, pero te comento que la mayoría de servidores de mail o FTP suelen tener una opción para controlar sus usuarios en Base de datos o similares de forma "Virtual" .. es decir, no creas usuarios en el S.O. del servidor sino para ese "servidor" concreto. (Ejemplo .. yo uso Postfix con usuarios "virtuales" sobre una BD Mysql, .. para mis sistemas crear una cuenta de e-mail en ese servidor no es más que hacer una típica consulta SQL a esa BD donde se almacenan esos datos, no son usuarios del sistema .. así que no comprometo en nada la seguridad si creo o borro usuarios de esta forma.)


Un saludo,
  #3 (permalink)  
Antiguo 26/12/2005, 06:49
Avatar de alexjnm  
Fecha de Ingreso: octubre-2004
Ubicación: cuba
Mensajes: 218
Antigüedad: 13 años, 1 mes
Puntos: 1
Saludos Cluster
antes que nada felisidadez y espero que hayas pasado una feliz noche buena

se lo que dises pero es que en mi servidor lo que tengo es sendmail y hasta donde se creo que no hacecta base de datos, eso lo quiero para qe cree los usuarios de correo.

lo que no deja que eso se ejecute es selinux una M, que segun los creadores de rethat es para protecion del sistema pero es una M como quiera.

ha lo que me propones de perl, me parese que no va poder ser es que no tengo ni idea de como funciona perl, mirare en el foro de "Linux" haver que me disen

Salu2 alex
__________________
__________________________________________________ _________
A beses el camino mas largo es la solución mas eficaz :)
  #4 (permalink)  
Antiguo 26/12/2005, 07:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Podrías consultar en los foros de Linux sobre como gestionar usuarios para tu servidor de correo Sendmail (MTA) en Mysql .. usando google salió esto:
http://sendmail-sql.sourceforge.net/

Pero realmente hay más documentación y es más "natural" usar usuarios "virtuales" para Postfix (o Qmail incluso) que no para Sendmail. Creo que deberías evaluar cambiarte de MTA.

Te dejo un tutorial (de tantos que hay en la red) sobre el tema para que le heches un vistado a ver si te convence la idea.

http://www.howtoforge.com/virtual_po..._quota_courier

Cualquier duda o consulta al respecto, intenta usar el foro de Linux.

Un saludo,
  #5 (permalink)  
Antiguo 26/12/2005, 09:23
Avatar de alexjnm  
Fecha de Ingreso: octubre-2004
Ubicación: cuba
Mensajes: 218
Antigüedad: 13 años, 1 mes
Puntos: 1
Gracias cluster
TEndre en cuanta lo de cambiar de MTA, pero es que no depende de mi ya le pase el lick al admin de la red para que mire de sendmail con mysql ok

diculpa las molestias
saludos alex

Feliz Fin de año
__________________
__________________________________________________ _________
A beses el camino mas largo es la solución mas eficaz :)
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 02:56.