Cómo habilitar el módulo Userdir de Apache en RHEL / CentOS

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 8Instale 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 ApacheHabilitar Userdirs en Apache

Para permitir que algunos usuarios tengan UserDiracceso 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 UserDiracceso 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_htmldirectorio / directorios en los directorios de inicio de usuario / usuarios. Por ejemplo, aquí estoy creando un public_htmldirectorio en el directorio de inicio del usuario de &ltstrong&gttecmint&lt/strong&gt .

# 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 usuariosEstablecer 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 ApacheVerificar UserDir en Apache

Si lo desea, también puede probar páginas HTML e información PHP creando los siguientes archivos.

Cree un archivo &ltstrong&gt/home/tecmint/public_html/test.html&lt/strong&gt 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 UserDirVerificar 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 UserDirVerificar 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

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux