martes, 25 de noviembre de 2008

Autenticación de Apache

¡Hola! en este tutoríal crearemos un usuario y grupo de autenticación para que solo unos usuarios inscritos por nosotros puedan acceder a cierta página.

El primer paso es tener instalado Apache si no es así introducimos este código para la instalación:
sudo aptitude install apache2-mpm-prefork

Una vez instalado apache vamos con la configuración.

1º Creamos un directorio dentro de /var/www/.
sudo mkdir clase

En este directorio debemos introducir la página simple de (index.html)
2º Ahora debemos crear un directorio donde almacenar las contraseñas dentro de /var de la siguiente forma:
sudo mkdir passwd

3º Ahora se crea el archivo con el usuario de la siguiente forma:
htpasswd -c /var/passwd/.htpasswd alumno

Ponemos el punto delante de htpasswd para que no sea visible.
-c solo se pondrá para el primer usuario que creemos, ya que si lo escribimos cada vez que creemos un usuario reemplazará al anterior creado.
Al crear el fichero pedirá contraseña para ese usuario:
4º Ahora creamos un fichero dentro de:
sudo gedit /var/www/clase/.htaccess

con el siguiente contenido:


-AuthUserFile sirve para indicar donde se encuentra almacenada los usuarios

Una vez creado todos los archivos anteriores tendremos que modificar el archivo de configuración del sitio web que se encuentra:
/etc/apache2/sites-available en el archivo que hemos creado anteriormente llamado sitio1
E introduciremos el siguiente contenido:


Directory es para indicar donde se encuentra el archivo que hemos creado anteriormente de configuración. Con esto sería suficiente para tener restringida una página a un usuario, ahora solo queda reiniciar el servidor y ya lo tendremos, para reiniciar haremos lo siguiente:
apache2ctl restart


Pero con esto solo restringiríamos la página a un solo usuario, pero si queremos permitir el acceso a más de un usuario debemos configurar lo siguiente.

1º Creamos un fichero dentro de /var/passwd con el nombre que nosotros deseemos yo le he dado el nombre de "group"donde pondremos una lista de los usuarios que le vamos a permitir el acceso.
El contenido del archivo contendrá el nombre que le vamos a dar al grupo, con el listado de los alumnos que le vamos permitir acceder a la página. Así quedaría:



Ahora deberemos modificar el fichero creado anteriormente que se encuentra en:
/var/www/clase/.htaccess


Y tendremos que modificar la linea AuthGroupFile donde tendremos que poner la ruta donde esta guardado el fichero del grupo, también tendremos que modificar la última linea donde tendremos que modificar el Require y ponerle el grupo. Quedaría así:


Reiniciamos apache con:
apache2ctl restart


Una vez reiniciamos comprobamos que funciona:



vemos como nos pide nombre de usuario y contraseña, con esto estaría terminado. Espero que os sea de utilidad hasta la próxima.

0 comentarios: