Estoy intentando configurar mi servidor web desde cero y como es la primera vez que hago todo por mi cuenta, no estoy seguro de qué tipo de permisos necesito configurar para cada sitio que tengo /var/www
.
En este momento, tengo el siguiente diseño para 2 de mis sitios web que alojo:
/var/www/ |-- blog.dev/
|-- public_html/
|-- .htaccess
|-- wp-admin
|-- wp-content
...
|-- web.dev/
|-- public_html/
|-- .htaccess
|-- index.php
Tal como está ahora, mi flujo de trabajo actual consiste principalmente en mí.ssh-ingresar al servidor y ocasionalmente cargar archivos a través deftp. Por lo tanto, necesito que mi cuenta de usuario pueda modificar todo y que Apache también pueda modificar cosas cuando, por ejemplo, subo una imagen a través del blog de Wordpress.
Entonces, asigné chmod 775
ambos public_html y los coloqué en chown www-data:www-data
, pero no estoy seguro de si esto es seguro. /var/www
todavía es propiedad de root, mi cuenta de usuario también se coloca en www-data
el grupo. Mi pregunta es, ¿qué podría hacer para mejorar la configuración general? Esto se siente extremadamente incómodo y torpe; Simplemente no se siente bien la forma en que lo hice. ¿Cuáles son algunas formas más infalibles de configurar correctamente los permisos para poder protegerme de posibles compromisos?
Respuesta1
Creo que sería una buena idea bloquear los permisos de sus aplicaciones web. A menos que sea necesario, el acceso de escritura debe estar restringido. Cambie los archivos y directorios a sólo lectura y cambie su propiedad a otra persona, tal vez root. Si son de solo lectura y pertenecen a www-data, sus permisos aún se pueden cambiar.