Pregunta

¿Cómo se puede permitir que un script PHP para escribir en un archivo con altas restricciones de seguridad, tales como que sólo permite a un único usuario para escribir en él?

La dificultad parece ser que un script de PHP se ejecuta como una baja de los permisos de usuario (tal vez de apache, o www, o nadie?), e incluso si me chown apache the_writable_file, el directorio es posible que no sea modificable por el bajo nivel de usuario.En general, ¿cuál es la forma habitual que PHP puede trabajar con los archivos de una manera segura?

¿Fue útil?

Solución

Por desgracia, en unos anfitriones que uso mod_php, no hay manera de restringir el acceso para los archivos de seguridad a una aplicación web y de inicio de sesión de usuario.

La solución es ejecutar la aplicación web de su nombre de usuario.Cuando haces eso, permisos de archivo de UNIX correctamente puede bloquear a todos los demás.Hay varias formas de implementar esto, incluyendo SuExec, suPHP, o de ejecutar PHP con FastCGI con mod_fcgid o mod_proxy_fcgid.FastCGI es mi forma favorita.

Otra solución es utilizar un host dedicado o servidor virtual privado.

Otros consejos

Seguro, chgrp apache the_writable_file y chmod g+w the_writable_file.Después de eso, sólo su seguro de usuario y el usuario de apache será capaz de escribir en el archivo.Dado que el usuario de apache está normalmente prohibido desde el registro, usted sólo tiene que preocuparse acerca de los usuarios de la web escrito a su seguro de archivos utilizando a través de http demonio.

Todas las carpetas que contienen necesita tener permisos de ejecución.

Por ejemplo, si el archivo está en /foo/bar/the_writable_file, los directorios "foo" y "bar" ambos necesitan tener ejecutable permiso para acceder a the_writable_file, incluso si no tienen permiso de lectura/escritura.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top