Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Autentificación: Proceso que consiste en determinar si una persona es quien dice ser. Es
decir, consiste en demostrar la identidad de dicha persona.
El archivo de texto .passwd consiste en una lista de nombres de usuarios con sus
respectivas claves (passwords) encriptadas por lo que este archivo no puede ser creado o
editado a mano. Este archivo deberá residir fuera de nuestra raíz de documentos, es
decir fuera del árbol que contiene todos los archivos de nuestro sitio.
ServerRoot
/usr/local/Apache
DocumentRoot
/usr/local/Apache/htdocs
Crear el directorio
/usr/local/Apache/pass
Para crear el archivo es necesario utilizar el programa htpasswd con la opciòn –c, para
crear un nuevo archivo.
#cd /usr/local/Apache/pass
#/usr/local/Apache/bin/htpasswd –c .passwd luis
New Password :
Re-type new password :
Adding password for user luis
Configuración de grupos
Probablemente no seamos los únicos en nuestra organización con derechos para entrar
al área privada, por lo que tal vez sea conveniente crear un grupo de usuarios con ese
mismo privilegio. Esto nos permitirá llevar una mejor organización más cuidadosa de
quien puede o no obtener la información privada.
Continuando con el ejemplo, hagamos que tanto luis como juan pertenezcan al grupo
webteam. Para esto crearemos un archivo llamado .groups y lo colocaremos en el
mismo directorio en el que pusimos el archivo .passwd. El archivo .groups se ve de la
siguiente manera:
En este archivo colocaremos los nombres de nuestros grupos seguidos de los nombres
de usuario de ese grupo separados por espacios. Un usuario puede pertenecer a varios
grupos.
Una vez que hemos creado las bases de datos de usuarios y, en su caso, los grupos, es
necesario configurar el servidor para poder proteger nuestra área privada. Esta
configuración se puede hacer globalmente, modificando el archivo httpd.conf o
utilizando archivos .htaccess
El primer método consiste en agregar una sección en nuestro archivo httpd.conf por
cada directorio que deseemos proteger. Para esto es necesario tener acceso al archivo
httpd.conf, por lo que si no tenemos ese acceso tendremos que usar el método de usar
archivos .htaccess, visto en la siguiente sección de esta pràctica. No es conveniente
saltarse directamente a esa sección, ya que serà en esta sección en donde se explicaràn
las directivas necesarias.
/usr/local/Apache/htdocs/administrar
AuthType
AuthName
AuthUserFile
AuthGroupFile
Require
Si solo luis tendra accesso al àrea privada, deberemos agregar la siguiente sección al
archivo httpd.conf
<DIRECTORY /usr/local/Apache/htdocs/administrar>
AuthType Basic
AuthName “Area de Administration”
AuthUserFile /usr/local/Apache/pass/.passwd
Require user luis
</DIRECTORY>
<DIRECTORY /usr/local/Apache/htdocs/administrar>
AuthType Basic
AuthName “Area de Administration”
AuthUserFile /usr/local/Apache/pass/.passwd
Require user luis juan
</DIRECTORY>
Y por ultimo, si todos los miembros del grupo webteam tendrán acceso:
<DIRECTORY /usr/local/Apache/htdocs/administrar>
AuthType Basic
AuthName “Area de Administration”
AuthUserFile /usr/local/Apache/pass/.passwd
AuthGroupFile /usr/local/Apache/pass/.groups
Require group webteam
</DIRECTORY>
AuthType
Permite seleccionar el tipo de autentificación para el directorio
AuthName
Permite especificar el nombre de la autentificación, este nombre aparecerá en el dialogo
del Login provisto por el cliente (navegador).
AuthUserFile
Indica en donde se encuentra el archivo de usuarios
AuthGroupFile
Indica en donde se encuentra el archivo de grupos
Require
Indica aquellos usuarios o grupos que podran acceder al directorio
Los archivos .htaccess permiten hacer configuraciones del servidor dependiendo del
directorio en el que estemos. Estos archivos de directivas dejan a un lado las directivas
en htpd.conf y aplica las que contiene tanto el directorio como a todo su contenido.
Para asegurar nuestra área privada, usaremos las mismas directivas vistas en la sección
anterior, pero las pondremos en el archivo .htaccess en el directorio:
/usr/local/Apache/htdocs/admin
Así si solo luis tendrá acceso al área privada, deberemos de crear el archivo .htaccess
con este contenido:
AuthType Basic
AuthName “Area de Admin”
AuthUserFile /usr/local/Apache/pass/.passwd
Require user luis
AuthType Basic
AuthName “Area de Admin”
AuthUserFile /usr/local/Apache/pass/.passwd
Require user luis juan
Y por ultimo, si todos los miembros del grupo webteam tendrán acceso:
AuthType Basic
AuthName “Area de Admin”
AuthUserFile /usr/local/Apache/pass/.passwd
AuthGroupFile /usr/local/Apache/pass/.groups
Require group webteam
/usr/local/Apache/htdocs/admin_usuario/
/usr/local/Apache/htdocs/admin_usuarios/
Implementando el mètodo 1 visto con anterioridad limitar el acceso a los directories
creados de acuerdo a las siguientes consideraciones: