¿Es seguro cambiar el propietario de la carpeta html/ en Apache?

¿Es seguro cambiar el propietario de la carpeta html/ en Apache?

Sé cómo usar chmod y esas cosas, así que esa no es la cuestión. Tengo un pequeño servidor (Ubuntu LTS) ejecutándose con Apache con la carpeta estándar en /var/www/html/. Por defecto, la raíz es el propietario de la html/carpeta.

Pregunta: ¿Es seguro cambiar el propietario de la html/carpeta?

Respuesta1

Es perfectamente seguro cambiar la propiedad de los archivos en /var/wwwy, de hecho, cualquier cosa en esa carpeta es suya para editarla y cambiarla como desee.

Por ejemplo, si el usuario tsmithnecesita poder escribir en archivos, /var/www/mywebestá perfectamente bien establecer el propietario de estos archivos en tsmith. O si lo prefiere, mantenga al propietario como rooty solicite tsmithsudo para poder escribirle, si le confía sudo.

Si tiene varios usuarios que necesitan poder editar los archivos y no desea darles sudo, también puede usar la membresía de grupo, por ejemplo, crear un grupo y agregar usuarios a ese grupo, luego configurar la propiedad del grupo y el grupo. escriba en los archivos relevantes para permitir que los miembros de ese grupo modifiquen esos archivos. Al hacer esto, probablemente desee utilizar el bit SetGID ( chmod g+s dir) en el directorio que lo contiene para garantizar que los archivos nuevos hereden la misma propiedad del grupo y umask 002en el de cada usuario ~/.profilepara asegurarse de que obtengan permiso de escritura del grupo; de lo contrario, los archivos nuevos solo serán editables por su creador y no otros miembros del grupo.

Sin embargo, debes tener en cuenta las siguientes malas prácticas:

  • No establezca la propiedad de ningún archivo para el www-datausuario ni para el www-datagrupo si le otorga permisos de escritura al grupo. El objetivo del www-datausuario es que es un usuario sin privilegios y no puede escribir en ningún archivo. Los demonios del servidor accesibles desde la red externa (como el servidor web) generalmente se ejecutan como un usuario sin privilegios, de modo que, en caso de que sean pirateados debido a una vulnerabilidad, las posibles cosas que el atacante puede hacer son mínimas.

    Excepción: algunas aplicaciones web requieren acceso de escritura a ciertos archivos y carpetas para implementar cosas como el almacenamiento de archivos adjuntos, etc. En estos casos, debes establecer la propiedad enwww-data SOLOpara esos archivos, manteniendo al www-datamínimo el número de archivos en los que se puede escribir.

  • Por la misma razón, no configure ningún archivo para que se pueda escribir en todo el mundo.

  • Si crea grupos, no reutilice grupos de usuarios existentes como admin, sudoo especialmente www-data, que ya tienen propósitos en Ubuntu porque esto puede reducir la seguridad del sistema si esos grupos no estaban diseñados para poder escribir en archivos. En su lugar, cree sus propios grupos y agrégueles miembros.

Respuesta2

No es muy seguro utilizar directorios o archivos con permisos de root (ya sea de propiedad o permisos únicos). Para archivos HTML estáticos no sería un gran problema de seguridad, pero tan pronto como se ejecutan scripts (PHP, JavaScript, cualquier formulario, etc.), pueden surgir problemas graves.

Respuesta3

Si solo necesita ofrecer contenido (html, imágenes, etc.), no es necesario establecer una propiedad especial para los directorios/archivos en /var/www, siempre que el usuario de apache2 ( www-data) tenga permiso para acceder al contenido.

En caso de que necesite hacer algo más, es posible que deba modificar las propiedades. Por ejemplo, si necesita cargar archivos desde un CMS (como WordPress, Joomla, etc.), deberá cambiar la propiedad del directorio de carga www-data(o al menos otorgar permisos de escritura a ese usuario)

Personalmente, soy /var/wwwpropiedad de rootun usuario con mod 1777(igual que /tmp) y los /var/www/site1directorios de sitios web (es decir: ) son propiedad de www-data.

¡Espero eso ayude!

información relacionada