Copiar carpetas dentro del servidor sin perder la seguridad
Publicado por José Luis (21 intervenciones) el 28/12/2016 22:09:04
Buenas a todos !!
A fecha de hoy entiendo que lo más seguro en nuestro servidor es tener las carpetas con permisos 755 que viene a significar que el PROPIETARIO tiene acceso total y el GRUPO y los OTROS únicamente lectura y ejecución.
Con esta configuración, al intentar copiar un archivo mediante copy() la respuesta es FALSE Permiso denegado.
Investigando un poco parece ser que PHP ejecuta los scripts con el usuario www-data (usuario por defecto de Apache). Y dicho usuario únicamente tiene lectura y ejecución. No tiene permiso de escritura.
He leído muchos foros y temas y prácticamente, en todos, la solución es asignar permisos 777 a las carpetas. Es decir, acceso total para todo el mundo, algo claramente desaconsejado por los programadores más expertos.
Algún otro programador opta por usar FTP. Realmente funciona fenomenal pero no existe ninguna función análoga a copy, algo así como ftp_copy().
Existe un ftp_mkdir(), ftp_rmdir(), ftp_rename(), ... ... pero no un ftp_copy() lamentablemente.
Entonces ¿cómo se copian archivos dentro de un mismo servidor de una carpeta a otra manteniendo la seguridad?
Lo ideal sería poder ejecutar los scripts de PHP con el usuario PROPIETARIO, no con el www-data por defecto.
¿Se puede?
¿Quizás a través de MySQL ?!?!?
¿Cómo lo hacéis vosotros?
Gracias, buenas noches !!
A fecha de hoy entiendo que lo más seguro en nuestro servidor es tener las carpetas con permisos 755 que viene a significar que el PROPIETARIO tiene acceso total y el GRUPO y los OTROS únicamente lectura y ejecución.
Con esta configuración, al intentar copiar un archivo mediante copy() la respuesta es FALSE Permiso denegado.
Investigando un poco parece ser que PHP ejecuta los scripts con el usuario www-data (usuario por defecto de Apache). Y dicho usuario únicamente tiene lectura y ejecución. No tiene permiso de escritura.
He leído muchos foros y temas y prácticamente, en todos, la solución es asignar permisos 777 a las carpetas. Es decir, acceso total para todo el mundo, algo claramente desaconsejado por los programadores más expertos.
Algún otro programador opta por usar FTP. Realmente funciona fenomenal pero no existe ninguna función análoga a copy, algo así como ftp_copy().
Existe un ftp_mkdir(), ftp_rmdir(), ftp_rename(), ... ... pero no un ftp_copy() lamentablemente.
Entonces ¿cómo se copian archivos dentro de un mismo servidor de una carpeta a otra manteniendo la seguridad?
Lo ideal sería poder ejecutar los scripts de PHP con el usuario PROPIETARIO, no con el www-data por defecto.
¿Se puede?
¿Quizás a través de MySQL ?!?!?
¿Cómo lo hacéis vosotros?
Gracias, buenas noches !!
Valora esta pregunta
0