User Directory o Userdir es un módulo de Apache, que permite recuperar directorios específicos del usuario a través de un servidor web Apache utilizando la http://example.com/user/
sintaxis.
Por ejemplo, cuando el módulo mod_userdir está habilitado, las cuentas de los usuarios en el sistema podrán acceder al contenido de sus directorios personales con el mundo a través del servidor web Apache.
En este artículo, le mostraremos cómo habilitar las direcciones de usuario de Apache ( mod_userdir ) en los servidores RHEL , CentOS y Fedora utilizando el servidor web Apache.
Este tutorial asume que ya tiene el servidor web Apache instalado en su distribución de Linux. Si no lo ha hecho, puede instalarlo mediante el siguiente procedimiento …
Paso 1: Instale el servidor HTTP Apache
Para instalar el servidor web Apache, use el siguiente comando en su distribución de Linux.
# yum install httpd [On CentOS/RHEL] # dnf install httpd [On Fedora]
Instale Apache en RHEL 8
Paso 2: Habilite las direcciones de usuario de Apache
Ahora necesita configurar su servidor web Apache para usar este módulo en el archivo de configuración /etc/httpd/conf.d/userdir.conf
, que ya está configurado con las mejores opciones.
# vi /etc/httpd/conf.d/userdir.conf
Luego, valide el contenido como se muestra a continuación.
# directory if a user request is received. # # The path to the end user account 'public_html' directory must be # accessible to the webserver userid. This usually means that userid # must have permissions of 711, userid/public_html must have permissions # of 755, and documents contained therein must be world-readable. # Otherwise, the client will only receive a "403 Forbidden" message. # <IfModule mod_userdir.c> # # UserDir is disabled by default since it can confirm the presence # of a username on the system (depending on home directory # permissions). # UserDir enabled tecmint # # To enable requests to /user/ to serve the user's public_html # directory, remove the "UserDir disabled" line above, and uncomment # the following line instead: # UserDir public_html </IfModule> # # Control access to UserDir directories. The following is an example # for a site where these directories are restricted to read-only. # <Directory "/home/*/public_html"> ## Apache 2.4 users use following ## AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS ## Apache 2.2 users use following ## Options Indexes Includes FollowSymLinks AllowOverride All Allow from all Order deny,allow </Directory>
Habilitar Userdirs en Apache
Para permitir que algunos usuarios tengan UserDir
acceso a directorios, pero no a nadie más, use la siguiente configuración en el archivo de configuración.
UserDir disabled UserDir enabled testuser1 testuser2 testuser3
Para permitir que todos los usuarios tengan UserDir
acceso a directorios, pero deshabilítelo para algunos usuarios, use la siguiente configuración en el archivo de configuración.
UserDir enabled UserDir disabled testuser4 testuser5 testuser6
Una vez que haya realizado los ajustes de configuración según sus requisitos, debe reiniciar el servidor web Apache para aplicar los cambios recientes.
# systemctl restart httpd.service [On SystemD] # service httpd restart [On SysVInit]
Paso 3: creación de directorios de usuarios
Ahora necesita crear un public_html
directorio / directorios en los directorios de inicio de usuario / usuarios. Por ejemplo, aquí estoy creando un public_html
directorio en el directorio de inicio del usuario de <strong>tecmint</strong> .
# mkdir /home/tecmint/public_html
A continuación, aplique los permisos correctos en los directorios de inicio del usuario y public_html .
# chmod 711 /home/tecmint # chown tecmint:tecmint /home/tecmint/public_html # chmod 755 /home/tecmint/public_html
Establecer permisos en directorios de usuarios
Además, configure el contexto SELinux correcto para Apache homedirs ( httpd_enable_homedirs ).
# setsebool -P httpd_enable_homedirs true # chcon -R -t httpd_sys_content_t /home/tecmint/public_html
Paso 4: Pruebe el directorio de usuario de Apache habilitado
Finalmente, verifique el Userdir apuntando su navegador al nombre de host del servidor o la dirección IP seguido del nombre de usuario.
http://example.com/tecmint OR http://192.168.0.105/tecmint
Verificar UserDir en Apache
Si lo desea, también puede probar páginas HTML e información PHP creando los siguientes archivos.
Cree un archivo <strong>/home/tecmint/public_html/test.html</strong> con el siguiente contenido.
<html> <head> <title>TecMint is Best Site for Linux</title> </head> <body> <h1>TecMint is Best Site for Linux</h1> </body> </html>
Verificar la página HTML en UserDir
Cree el archivo /home/tecmint/public_html/test.php con el siguiente contenido.
<?php phpinfo() ?>
Verificar la página PHP en UserDir
¡Eso es todo! En este artículo, hemos explicado cómo habilitar el módulo Userdir para permitir que los usuarios compartan contenido de sus directorios de inicio. Si tiene preguntas sobre este artículo, no dude en preguntar en la sección de comentarios a continuación.
apache