Proteger carpetas con .htaccess y .htpasswd

apache

Una forma básica de ofrecer seguridad sobre directorios web en Linux es utilizando las posibilidades que nos ofrece la apache.

.htaccess

Hemos de crear primero, un archivo llamado “.htaccess” y editarlo con las siguientes directivas:

AuthUserFile: path absoluto hasta el fichero .htpasswd
AuthName: contendrá el nombre del prompt o ventana que el usuario leerá al acceder al directorio protegido
AuthType:
el tipo de autenticación
require user: los usuarios que podrán acceder al directorio protegido

Un ejemplo de .htaccess sería

AuthUserFile /path/absoluto/a/.htpasswd
AuthName Acceso Restringido
AuthType Basic
require user prueba

Recordad que este archivo se ha de guardar en la carpeta donde queremos implementar la seguridad. Incluso podríamos llegar a bloquear el acceso a archivos, añadiendo debajo de esas líneas lo siguiente:


<\Files "index.html">
Require valid-user
<\/Files>

.htpasswd

Este otro fichero, contiene el nombre del usuario y a continuación su password pero, encriptado. Para genera el archivo necesitamos, o bien acceso a nuestro apache para crear el password desde consola o bien, existen muchas webs que nos crean el texto del archivo .htpasswd, al entrar el nombre y el password que queremos.

Si tenemos acceso a la consola lo generamos nosotros mismos:

-bash-3.2# htpasswd -nb pepito pepote
pepito:29.fNajst6GCU

para añadirlo al .htpasswd directamente, lo podemos redireccionar con el cat

[cc] bash-3.2# htpasswd -nb pepito pepote >> .htpasswd
[/cc] Sino, podemos buscar sitios en internet y luego editamos el fichero.

Si apache no te pide la autorización al acceder a la ventana, asegúrate de que lo tienes bien configurado.

Links
http://www.apacheweek.com/features/userauth
http://www.cristalab.com/tutoriales/proteger-carpetas-con-.htaccess-y-.htpasswd-c213l/
http://www.elated.com/articles/password-protecting-your-pages-with-htaccess/
http://chernando.eu/doc/apache/
http://www.colordeu.es/BLOG/proteger-carpetas-web-con-htaccess-y-htpasswd
http://readthefuckingmanual.net/error/1385/

4 thoughts on “Proteger carpetas con .htaccess y .htpasswd

  1. jors says:

    Ep nano, cóm va? Sóc el Jordi, l’ex Telematic.

    Sempre havia sentit parlar de l’Apache, no de “la Apache”, però també em sembla sutgerent l’idea d’una india 😛

    Per altra banda, comentar que l’ús d’arxius .htaccess pot suposar un performance penalty al rendiment del servidor web, tot i que a vegades és l’única manera de mantenir la seguretat d’una zona per als usuaris d’un hosting compartit. Una petita lectura al respecte: http://httpd.apache.org/docs/2.0/howto/htaccess.html#when

    Keep up the good work!

  2. Rubén Ortiz says:

    Hola Jordi

    me alegro de oir de ti. “La Apache”, no me había dado cuenta. Pero si han perdonado a Johan no hablar bien español despues de casi 40 años a mi también me pueden pasar lo mio no? “Con calidaddddd…”

    Cuando hablas de penalización del rendimiento, te refieres al uso de .htaccess como autentificación? o en general? Si es lo segundo, veo imposible evitar el uso de .htaccess. Lo primero, supongo que se usa en contadas ocasiones.

    Saludos

  3. jors says:

    Me refiero a usarlo en general. Si no estas bajo un hosting compartido o tú eres el amo y señor del mismo, puedes evitarlo con directivas de configuración de apache (globales o en base a vhost) directamente.

Leave a Reply

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