domingo, 13 de noviembre de 2022

Directorio Lugar de Datos de Páginas Web del Apache en Debian /var/www/html/

Lugar de Páginas Web del Apache en Debian /var/www/html/

en el directorio: /var/www/html/dominio/

https://usuariodebian.blogspot.com/2020/09/apache-permisos-usuario-y-grupo-www-data.html


Vamos a configurar correctamente la carpeta: /var/www/html

Luego de instalar el servidor web apache2 en Debian GNU/Linux, vamos a configurar la carpeta: /var/www/html con el usuario, el grupo y los permisos adecuados, para el correcto funcionamiento.


1. Permisos que debe tener la carpeta: /var/www/html

La carpeta /var/www/html debería tener el permiso 755 (nunca el permiso 777). Con el permiso 755, el propietario tiene todos los privilegios (lectura, escritura y ejecución), el grupo y el resto de usuarios solo tendrán permisos de lectura y de ejecución en la misma carpeta.


Pero nosotros vamos a usar el permiso 
775. Con este permiso (775), el propietario y el grupo tiene todos los privilegios (lectura, escritura y ejecución), y el resto de usuarios solo tendrán permisos de lectura y de ejecución en la misma carpeta. Vamos a usar este permiso para no cambiar ni el propietario y ni el grupo por defecto del servidor apache, que por defecto se llama: www-data



2. Por defecto, una vez instalado el servidor web apache, en Debian GNU/Linux, el dueño del grupo y el directorio por defecto pertenecen a root. Nosotros vamos a cambiar el dueño del directorio y el grupo, al usuario por defecto de apache, llamado: www-data.

chown -R www-data:www-data /var/www/html



3. Ahora le damos permisos de escritura en el directorio /var/www/html, al grupo www-data.

chmod -R 775 /var/www/html ó chmod -R g+w /var/www/html

Una vez dado el permiso de escritura al grupo, los permisos quedarían asignados con el 775, tanto propietario como grupo tendrán todos los privilegios (lectura, escritura y ejecución) sobre dicha carpeta; el resto de usuarios tendrá permiso de lectura y ejecución.

4. Para facilitar la administración del sitio web, añadimos nuestro usuario (por ejemplo: diego) al grupo de apache llamado: www-data.

usermod -a -G www-data diego


Nota: para que los cambios tengan efectos, tenemos que deslogearlo y volvernos a logear.

Si estamos accediendo el servidor con el usuario diego, podemos verificar que ya pertenecemos al grupo www-data, usando el siguiente comando:

groups

Observación: Si hemos realizados cambios en el algún momento, y no se encuentran con los permisos correcto para nuestro servidor, usaremos el siguiente comando para poner el permisos 775 a todas las carpeta:

find /var/www/html -type d -exec chmod 755 {} \;

Si hemos realizados cambios en el algún momento, y no se encuentran con los permisos correcto para nuestro servidor, usaremos el siguiente comando para poner el permisos 664 a todos los ficheros:

find /var/www/html -type f -exec chmod 644 {} \;

Nota importante:
- Todo lo anterior es para el servidor por defecto, directorio: /var/www/html. También podemos servir paginas web desde nuestro propio espacio de usuario (/home/diego), creando la carpeta public_html, usando el comando: mkdir /home/diego/public_html, donde diego es el nombre del usuario con el que estamos trabajando.

- A continuación, debemos asegurarnos que nuestro directorio web public_html también pertenece al grupo www-data de Apache:

chgrp -R www-data /home/diego/public_html

- Le damos los permisos adecuados para que los archivos y directorios creados dentro del mismo directorio sean visibles en la web, usamos el comando:

chmod -R 2755 /home/diego/public_html

Con esto tenemos configurado los permisos, usuarios y grupos para mostrar y ejecutar adecuadamente sitios web en Apache.

Nota explicativa:
Los propietarios y los permisos se gestionan desde el shell con los comandos:

chown: cambia el usuario y el grupo propietarios.
chgrp: cambia sólo el grupo propietario.
chmod: cambia permisos.


qué significan los permisos: rwx-t

r: permiso de lectura.
w: permiso de escritura.
x: permiso de ejecución.
- (guión): no se tiene ese permiso. (cero)
t (en vez de la x de otros): sólo el propietario puede borrarlo (bit pegajoso, sticky). Se usa en directorios donde todo el mundo puede escribir (como /tmp), para que los archivos no puedan ser borrados por cualquiera.



Algunas capturas de pantalla




 


No hay comentarios:

Publicar un comentario