Como proteger un Directorio en la Web


Un sistema muy bueno y facil de configurar es aquel que te permite acceder a tu directorio con la seguridad de estar protegido. Vamos a ver como hacerlo de una manera sencilla, rapida, y segura

Para empezar, tendremos que elegir el directorio a proteger, para este ejemplo usare el directorio donde tengo configurado phpMyAdmin para acceder a la Base de Datos Mysql a traves de la web, es una continuación al articulo sobre Introducción a PHP + MySql + Apache + phpMyAdmin

El directorio se encuentra en:

/home/httpd/html/myadmin

Y accedo a el a traves de la dirección local:

http://localhost/myadmin/index.php3

Para empezar editamos el siguiente fichero (respetar el punto de .htaccess), y lo guardamos en /home/httpd/html/myadmin

El punto (.htaccess y .htpasswd) delante del nombre de un fichero, convierte al fichero en oculto al hacer un listado.

En el siguiente codigo, le indicamos de donde tiene que leer el fichero con los usuarios y contraseñas con las que tenemos acceso a este directorio

——-Fichero: .htaccess———-

AuthUserFile /home/httpd/html/myadmin/.htpasswd
AuthGroupFile /dev/null
AuthName “PhpMyAdmin Server”
AuthType Basic

Options All
<Limit GET POST PUT>
require valid-user
</Limit>
——-Fin Fichero————-

Como veis, este fichero hace referencia a un fichero en /home/httpd/html/myadmin/.htpasswd

Este fichero contiene los usuarios y contraseñas con las que tenemos acceso a este directorio (respetar el punto de .htpasswd)

Para generar este fichero usaremos la utilidad htpasswd, que genera un fichero de claves.

Para usarlo basta hacer:

[root@p90 myadmin]# htpasswd -c /home/httpd/html/myadmin/.htpasswd pepe
New password: (ponemos pepe como contraseña)
Re-type new password:
Adding password for user pepe

Esto es lo que saldra en el fichero .htpasswd –> pepe:ZsXDr0J0KGuEo

La opción -c lo que hace es sobreescribir cada vez que lo ejecutais

Si quereis añadir nuevos usuarios basta hacer lo mismo sin la ‘-c’:

[root@p90 myadmin]# htpasswd /home/httpd/html/myadmin/.htpasswd tomas

———Fichero: .htpasswd————

pepe:ZsXDr0J0KGuEo
——-Fin Fichero————-

Para poder usarlo tendremos que indicar al Apache que vamos a tener un directorio protegido.
Para eso simplemente basta con añadir estas linias:

<Directory “/home/httpd/html/myadmin”>
AllowOverride All
</Directory>

Una vez hecho todo esto, solo necesitamo reiniciar el servidor Apache de la siguiente forma:

[root@p90 myadmin]# cd /etc/rc.d/init.d/
[root@p90 init.d]# ./httpd restart
Shutting down http: [ OK ]
Starting httpd: [ OK ]

Bibliografia:

  • http://personal3.iddeo.es/traque/notas/apache.txt
  • Introducción a PHP + MySql + Apache + phpMyAdmin
  • Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=656 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.