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

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

Cuando administra proyectos en línea, a menudo debe limitar el acceso a ese proyecto para protegerlo contra el mundo exterior. Puede haber diferentes razones para eso: por ejemplo, desea evitar que los rastreadores de motores de búsqueda accedan a su sitio mientras aún está en fase de desarrollo.

Password Protect Directorios web Apache

En este tutorial, le mostraré cómo protegidos con contraseña diferentes directorios de sitios web en apache Servidor web. Hay muchas maneras en que puede lograr esto, pero revisaremos dos de ellas que se usan más comúnmente.

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

Requisitos

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

  • Un servidor web de Apache que funciona
  • El DESLEDOVERRIDE AUTHCONFIG La directiva debe habilitarse en el archivo de configuración de Apache.

Configuración del directorio protegido de contraseña Apache

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

---------------- En Redhat/centos Sistemas basados ​​---------------- # VI/etc/httpd/conf/httpd.conf ---------------- ON Debian/Ubuntu Sistemas basados ​​---------------- # nano/etc/apache2/sites disponible/000 default.confusión 

2. Encuentre la raíz del directorio de documentos Apache para /var/www/html y agregue las siguientes cosas como se sugiere:

En Apache 2.2 versión

 Los índices de opciones incluyen FeuringSymlinks Multiviews?  

En Apache 2.4 versión

 Los índices de opciones incluyen FeuringSymlinks Multiviews ElignOverride requiere todo lo que se otorgue  
Apache 2.4: Habilitar TODILDOVERRIDE TODOS

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

--------------- En System ------------------- # SystemCTL reiniciar httpd [ON Sombrero rojo Sistemas basados] # SystemCTL reiniciar Apache2 [en Debian sistemas basados] --------------- Sysv init ----------------- # servicio httpd reiniciar [en Sombrero rojo sistemas basados] # servicio apache2 reiniciar [en Debian sistemas basados] 

4. Ahora usaremos el htpasswd Comando 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 usuario de nombre de archivo 

El -C La opción especifica el archivo que mantendrá la contraseña cifrada y nombre de usuario Especifica al usuario para la autenticación.

5. Nuestro archivo de contraseña debe ubicarse fuera del directorio accesible para la web de Apache para que esté bien protegido. Para ese propósito, crearemos un nuevo directorio:

# mkdir /home /tecmint 

6. Después de eso, generaremos nuestro nombre de usuario y contraseña que se almacenarán en ese directorio:

# htpasswd -c/home/tecmint/webpass tecmint 

Una vez que ejecute este comando, tendrá que ingresar una contraseña para nuestro nuevo usuario "Tecmint" dos veces:

Crear contraseña de usuario de apache

Después de eso, tendremos que asegurarnos de que Apache pueda leer el "pasaje web" archivo. Para ese propósito, 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 Debian/Ubuntu Sistemas basados ​​---------------- # 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 debemos decirle a Apache que solicite contraseña al acceder a nuestro directorio dirigido. Para ese propósito, cree un archivo llamado .htaccess en /var/www/html:

# vi/var/www/html/.htaccess 

Agregue el siguiente código en él:

AuthType Basic Authname "Acceso restringido" AuthuserFile/Home/TecMint/WebPass requiere el usuario TecMint 
Crear acceso restringido a Apache

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

http: // ip-address 

Debe recibir el nombre de usuario y la contraseña:

Autenticación de directorio protegido de Apache Password

Ingrese el nombre de usuario y la contraseña que configuró para proceder a su página.

Notas adicionales

Si está utilizando alojamiento compartido, probablemente no tenga acceso al archivo de configuración de Apache. Sin embargo, la mayoría de las empresas de alojamiento han habilitado el "Ellowoverride todo " opción por defecto. Esto significa que solo necesitará generar el nombre de usuario y la contraseña y luego seleccionar directorio que desea proteger. Esto alivia significativamente tu tarea.

Conclusión

Espero que hayas encontrado este tutorial útil y te ayudes a lograr tu objetivo. Si tiene alguna pregunta o comentario, no dude en publicarlas en la sección a continuación.