Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/02/2006, 10:27
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Creo que el tema sería mejor tratado en foros como Linux.

De todas formas ... todo es "relativo" el tema de los permisos a como se ejecute PHP (si es como CGI o como módulo de un servidor HTTP como Apache) y también las condiciones de ese servicio .. si es "compartido" por otros sitios/usuarios o no.

Por ejemplo .. en un servicio de hosting compartido .. si usan PHP como módulo de Apache .. todos los usuarios de otros sitios (esto pasa en servicios de hosting) podrían acceder a los archivos (depende de más configuración de PHP) de tu sitio .. es decir, tu "vecino" podría acceder a tus archivos y "leerlos" .. pero si usas un permiso con "escritura a todo usuario" también los podría modificar o crear (nuevos).

El problema muchas veces es que tenemos a "PHP" creando archivos con el usuario que este use (el que usa Apache en los modos de instalación de PHP "como módulo") y a "otro" usuario que se nos dió para entrar por FTP a ese servidor y a los mismoas archivos que tal vez creó PHP o administró PHP en general. Ahí tenemos el "conflicto" de los permisos de archivos y se suele dar "permiso" a todo usuario (cuando realmente debería ser a esos "dos" sólo).

En un servidor compartido .. PHP presta la opción "Safe Mode" (Modo seguro) para evitar estos problemas de seguridad .. a costa de ser altament restricitvo:

http://www.php.net/features.safe-mode

Sin usar "Safe mode" necesariamenta .. esto en parte lo soluciona el uso de PHP como CGI (a costa de perder algo de rendimiento .. se gana en seguridad por "defecto"). En modo CGI, PHP se ejecuta con el usuario que se asigne y cada "servidor virtual" de un servicio de hosting compartido puede y de hecho debe usar uno diferente .. el mismo que se usa para conectarse por FTP y totalmente restringido a su ambito del "servidor virtual".

No sé si lié mucho el tema .. pero todo esto se basa en como un S.O. tipo *NIX (Linux, Unix .. ) gestiona los permisos de los archivos y procesos.

PD: 0777 no sólo es escritura/lectura todo el mundo sino también "ejecución".

Un saludo,