En esta entrada vamos a aprender a configurar un servidor web, de forma que cuando el cliente quiera acceder a una determinada dirección, le asigne unas credenciales para poder acceder a la página web.
Voy a comenzar creando 2 páginas web de prueba. Una será "profesores", la cual tendrán acceso todos los usuarios, y la otra será "equipodirectivo", en la que solo tendran acceso los usuarios "director","jefeestudios" y "secretario".
La página web del instituto que hemos creado anteriormente tenía la dirección web www.noavi.org y estaba alojada en la ruta /var/www/noavi. Bien, pues en esta misma ruta, crearé las carpetas "profesores" y "equipodirectivo" cada una con su respectivo index.html.
Una vez que hayamos creado los index correspondientes a cada página nos dirigimos a la ruta /etc/apache2/sites-available/ y aquí editamos el fichero de configuración de nuestra página, en mi caso noavi.conf
Añadimos las siguientes líneas:
- En <Directory especificaremos la ruta, de donde se encuentra la página web a la que queremos asignar unas credenciales.
- En AuthType basic, indicamos que queremos un cifrado básico.
- En AuthName indicaremos el nombre que queremos que aparezca cuando se entre en la página.
- En AuthUserFile especificaremos la ruta del fichero de las contraseñas. Este fichero se llamará password, lo crearemos posteriormente y la ruta será /etc/apache2
- En Require user, especificamos los usuarios que se podrán loguear.
Una vez configuremos el fichero de nuestra página web, guardamos con CTRL+O y salimos con CTRL+X.
Ahora crearemos el fichero de contraseñas (password). Para ello nos situamos en /etc/apache2 y ejecutamos el siguiente comando:
htpasswd -c password user
La opción -c solo la usaremos la primera vez que creemos este fichero puesto que sino se sobrescribiran las contraseñas de los usuarios.
En este comando "user", será el usuario al que vayamos a establecer una contraseña.
Una insertemos el usuario, nos pedirá introducir la contraseña, y una verificación para comprobar que no haya errores. Luego la contraseña quedará en el fichero de forma ecriptada.
Volvemos al fichero .conf que tengamos configurado en /sites-available , y añadimos las siguientes líneas para la configuración de la página "profesores":
Con la opción "Require valid-user" conseguiremos que todos los usuarios que definamos sean válidos.
Guardamos con CTRL+O y salimos con CTRL+X.
Ahora procedemos a reiniciar apache usando el comando systemctl restart apache2 , si lo hemos configurado todo correctamente, no debe de haber errores.
Si hubiese algun error, podremos verlo ejecutando el comando journal -xe o el comando apache2ctl -t
Si nos vamos a los clientes y intentamos entrar en www.noavi.org/profesores , podemos comprobar que nos deja entrar sin ningún tipo de verificación.
Si en cambio, intentamos entrar en www.noavi.org/equipodirectivo , nos pedirá unas credenciales en las que tendremos que poner los usuarios y contraseñas que definimos en el fichero de configuración y el fichero password.
Una vez ingresamos las credenciales:
En Windows ocurre lo mismo:
Comments