Cómo proteger con contraseña los directorios web en Apache usando el archivo .htaccess

Cómo proteger con contraseña los directorios web en Apache usando el archivo .htaccess

Cuando administra proyectos en línea, a menudo necesita limitar el acceso a ese proyecto para protegerlo del mundo exterior. Puede haber diferentes razones para ello, por ejemplo, desea evitar que los rastreadores de los motores de búsqueda accedan a su sitio mientras aún se encuentra en la fase de desarrollo.

 Proteger con contraseña los directorios web de Apache Proteger con contraseña Apache Web Directorios Proteger con contraseña los directorios web de Apache

En este tutorial, le mostraré cómo proteger con contraseña diferentes directorios de sitios web en la web Apache. servidor. Hay muchas formas de lograr esto, pero revisaremos dos de ellas que se utilizan con más frecuencia.

El primer método configura la protección con contraseña directamente en el archivo de configuración de Apache, mientras que el segundo usa . htaccess.

Requisitos

Para configurar la protección con contraseña para sus directorios web, deberá tener:

  • A servidor web Apache en funcionamiento
  • La directiva AllowOverride AuthConfig. debe estar habilitada en el archivo de configuración de Apache.

Configurar el directorio protegido con contraseña de Apache

1.. Para este tutorial, protegeremos el directorio raíz web principal/var/www/html. Para proteger ese directorio, abra la configuración de Apache:

—————-En sistemas basados ​​en RedHat/CentOS. —————# vi/etc/httpd/conf/httpd.conf—————-En sistemas basados ​​en Debian/Ubuntu. —————# nano/etc/apache2/sites-available/000-default.conf freestar.config.enabled_slots.push (LocationName: “tecmint_incontent”, slotId: ” tecmint_incontent “);

2.. Busque la raíz del directorio de documentos Apache para /var/www/html. y agregue lo siguiente como se sugiere:

On Apache 2.2 Versión Opciones Índices Incluye FollowSymLinks MultiViews AllowOverride All Order allow, deny Allow from all En Apache 2.4 Version Opciones Índices Incluye FollowSymLinks MultiViews AllowOverride All Requerir todos los  Apache 2.4: Habilite AllowOverride All  Apache 2.4: Habilitar AllowOverride All Apache 2.4 : Habilite AllowOverride All

3.. Guarde el archivo y reinicie Apache usando el siguiente comando:

—————On Systemd. ——————# systemctl restart httpd [En sistemas basados ​​en RedHat. # systemctl restart apache2 [On Sistemas basados ​​en Debian. —————En SysV init. —————-# service httpd restart [en sistemas basados ​​en RedHat. # service apache2 restart [en sistemas basados ​​en Debian. ]

4.. Ahora usaremos el comando htpasswd. para generar nombre de usuario y contraseña para nuestro directorio protegido. Este comando se utiliza para administrar archivos de usuario para la autenticación básica.

La sintaxis general del comando es:

# htpasswd-c nombre de archivo nombre de usuario

La opción-c especifica el archivo que se mantendrá la contraseña cifrada y nombre de usuario especifica el usuario para la autenticación.

5.. Nuestro archivo de contraseña debe estar ubicado fuera del directorio de acceso web de Apache para que está bien protegido. Para tal fin, crearemos un nuevo directorio:

# mkdir/home/tecmint

6.. Luego de eso generaremos nuestro nombre de usuario y contraseña que serán almacenados en ese directorio:

# htpasswd-c/home/tecmint/webpass tecmint

Una vez que ejecutes este comando tendrás que ingresar una contraseña para nuestro nuevo usuario “tecmint” dos veces:

 Crear contraseña de usuario de Apache  Crear contraseña de usuario de Apache Crear contraseña de usuario de Apache

Después de eso, necesitaremos asegurarnos de que Apache pueda leer la Archivo “ webpass. . Para ello, deberá cambiar la propiedad de ese archivo con el siguiente comando:

—————-En RedHat/CentOS. sistemas basados ​​—————-# chown apache:/home/tecmint/webpass # chmod 640/home/tecmint/webpass—————-En sistemas basados ​​en Debian/Ubuntu. —————# chown www-data/home/tecmint/webpass # chmod 640/home/tecmint/webpass

7.. En este punto, nuestro nuevo usuario y contraseña están listos. Ahora necesitamos decirle a Apache que solicite una contraseña cuando acceda a nuestro directorio de destino. Para ello, cree un archivo llamado .htaccess. en /var/www/html.

# vi/var/www/html/.htaccess

Agregar el siguiente código en él:

AuthType Basic AuthName “Acceso restringido” AuthUserFile/home/tecmint/webpass Requiere usuario tecmint  Crear acceso restringido de Apache  Crear acceso restringido de Apache Crear acceso restringido de Apache

8. Ahora guarde el archivo y ponga su configuración a prueba. Abra su navegador e ingrese su dirección IP o nombre de dominio en el navegador web, por ejemplo:

http://dirección-ip

Se le debe solicitar el nombre de usuario y la contraseña:

 Autenticación de directorio protegido con contraseña de Apache  Autenticación de directorio protegido con contraseña de Apache Autenticación de directorio protegido con contraseña de Apache

Introduzca el nombre de usuario y la contraseña que configuró página.

Notas adicionales

Si está utilizando alojamiento compartido, lo más probable es que no tenga acceso a Apach e archivo de configuración. Sin embargo, la mayoría de las empresas de alojamiento han habilitado la opción “ Permitir anular todo”. de forma predeterminada. Esto significa que solo necesitará generar el nombre de usuario y la contraseña y luego seleccionar el directorio que desea proteger. Esto facilita significativamente su tarea.

Conclusión

Espero que este tutorial le haya resultado útil y le ayude a lograr su objetivo. Si tiene alguna pregunta o comentario, no dude en publicarlos en la sección siguiente.

Leave a comment

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