Cargando



Cómo proteger directorios web con .htaccess y .htpasswd

En este tutorial vas a ver cómo proteger los directorios o carpetas de tus páginas web de forma manual a través de los archivos .htaccess y .htpasswd.


jul 14 2016 13:54
Avanzado
jul 14 2016 18:39

En este tutorial vamos a ver cómo proteger directorios o carpetas de páginas web a través del archivo .htaccess y .htpasswd. Vamos a ver una explicación de como realizarlo de una manera manual, sin ayuda de paneles. Lo primero que haremos es explicar brevemente de que se tratan los mencionados archivos.

 

Qué es .htaccess y htpasswd
Son dos archivos muy importantes para modificar ciertos aspectos en el servidor. Su contenido es texto plano, así que lo podrás editar desde cualquier programa que permita trabajar con texto plano, como el bloc de notas, gedit, etc. (Word recuerda que no trabaja con texto plano). El archivo .htaccess sirve para proteger carpetas, pero también lo podemos usar para que salgan urls cortas.

 

.htacces va a establecer el tipo de permisos necesario y quienes pueden acceder a qué archivos.

 

.htpasswd va a encargarse de guardar el nombre y contraseña de cada uno.

 

 

.htaccess


Este archivo lo vamos a insertar en la carpeta que deseamos salvaguardar. En el archivo vamos a escribir lo siguiente:
AuthUserFile ruta_absoluta/.htpasswd
AuthName tu_nombre
AuthType Basic
require user solvetic
Vamos a ver cada línea con una breve explicación a continuación.

 

AuthUserFile ruta_absoluta/.htpasswd
Indicará donde se encuentra nuestro archivo .htpasswd, debemos insertar la ruta absoluta, este archivo lo debemos situar fuera de la carpeta public_html, fuera del alcance de los usuarios (de la web), si no es podrán descubrir tus usuarios y contraseñas.

 

AuthName tu_nombre
Esta línea se encargará de mostrar el nombre del sitio, lo que pongas no afectara a los nombres de carpeta o archivos.

 

AuthType Basic
La tercera línea indicará el tipo de autentificación, en este caso el tipo es básico.

 

require user solvetic

La última línea sirve para indicar el usuario que puede entrar, en este caso el usuario que puede entrar es único, llamado solvetic, pero podríamos poner varios usuarios en la misma línea separándolos con espacios. Si pusiéramos valid-user podrían entrar todos los usuarios. También podríamos proteger por archivos, para ese caso pondríamos debajo de AuthType:
<Files "visita_solvetic.html">
     require user solvetic
</Files>

 

Podemos tocar muchas cosas, depende de lo que queramos conseguir.

 

 

.htpasswd


Este archivo contiene la lista de nombres de usuario y sus respectivas contraseñas, por lo que conviene tenerlo guardado. La contraseña vendrá encriptada. Cada línea del archivo vendrá formada de la siguiente forma:
usuario:contraseña
Podemos ejecutar el comando htpasswd para que nos cree el archivo, o nos muestre la cadena en la terminal, a continuación dejo la estructura de como se puede usar:
htpasswd [ -c ] [ -i ] [ -m | -B | -d | -s | -p ] [ -C cost ] [ -D ] [ -v ] passwdfile usuario 

htpasswd -b [ -c ] [ -m | -B | -d | -s | -p ] [ -C cost ] [ -D ] [ -v ] passwdfile usuario contraseña

htpasswd -n [ -i ] [ -m | -B | -d | -s | -p ] [ -C cost ] usuario

htpasswd -nb [ -m | -B | -d | -s | -p ] [ -C cost ] usuario contraseña
Vamos a ver 2 ejemplos:

 

Para imprimir en la terminal la cadena que tenemos que añadir de manera manual al archivo .htpasswd, ejecutamos:

htpasswd -nb usuario contraseña
Si queremos que escriba directamente en el archivo .htpasswd la cadena, ejecutamos:
htpasswd -cb ruta_donde_guardar/.htpasswd usuario contraseña
Nota
Donde ves ruta_donde_guardar es la ruta donde pondrás el archivo .htpasswd. Ten en cuenta que el parámetro c se utiliza para crear el archivo .htpasswd, y que si existe lo trunca.

 

También te puede interesar este generador de contraseñas para el fichero, es muy fácil de usar, vamos a ver cómo se crea, insertamos el nombre de usuario y la contraseña para él:

 

generar_password_htpasswd_1.jpg

 

Ahora pinchamos en el botón create .htpasswd file y nos saldrá lo siguiente:

 

generar_password_htpasswd_2.jpg

 

Tendremos que copiar la línea que nos aparece en el recuadro de texto en nuestro archivo, recuerda que cada usuario va en una línea.


¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X