Diferencia entre revisiones de «Autentificación, Autorización y Control de Acceso con Apache2»

De CURE - Informática
Saltar a: navegación, buscar
m
Línea 13: Línea 13:
 
<li>Luego con el siguiente comando creamos los usuarios y contraseñas:</li>
 
<li>Luego con el siguiente comando creamos los usuarios y contraseñas:</li>
  
<pre>htdigest -c /etc/apache2/password/.htdigest usuario</pre>
+
<pre>htdigest -c /etc/apache2/password/.htdigest realm usuario</pre>
  
 
el comando les pedirá que ingrese una contraseña para usuario y la confirme. <br>
 
el comando les pedirá que ingrese una contraseña para usuario y la confirme. <br>
Línea 21: Línea 21:
 
<pre>
 
<pre>
 
<Directory /var/www>
 
<Directory /var/www>
        AuthName "Nombre_Servidor"
+
        AuthName "Nombre_Autenticación"
 
        AuthType Digest
 
        AuthType Digest
 
        AuthDigestDomain http://Dominio_Servidor/
 
        AuthDigestDomain http://Dominio_Servidor/
Línea 28: Línea 28:
 
</Directory>
 
</Directory>
 
</pre>
 
</pre>
Con esto le damos acceso a todos los usuarios que figuran en el archivo .htdigest
+
Con esto le damos acceso a todos los usuarios que figuran en el archivo .htdigest. '''Nota''': el "Nombre_Autenticación" debe ser igual al "realm" utilizado en el comando htdigest.
 
<li>Por último reiniciamos apache y tendremos funcionando el módulo de autentificación:</li>
 
<li>Por último reiniciamos apache y tendremos funcionando el módulo de autentificación:</li>
 
<pre>$ /etc/init.d/apache2 restart</pre>
 
<pre>$ /etc/init.d/apache2 restart</pre>

Revisión del 08:54 13 dic 2011

Para tener Autentificación, Autorización y Control de Acceso en nuestro servidor web entero o un determinado directorio haremos lo siguiente:

  1. Como paso previo es necesario tener levantado el módulo "auth" con el siguiente comando:
  2. $ a2enmod auth_digest

    Con este tipo de autentificación las contraseñas serán encriptadas. Si elegimos el "auth_basic" las contraseñas no se encriptarán, en esta guia utilizaremos contraseñas encriptadas (mod auth_digest).

  3. Es necesario crear un archivo de contraseñas (es recomendable no colocar este archivo de forma tal que sea accesible mediante la Web), en este caso crearé el siguiente directorio:
  4. /etc/apache2/password  
  5. Luego con el siguiente comando creamos los usuarios y contraseñas:
  6. htdigest -c /etc/apache2/password/.htdigest realm usuario

    el comando les pedirá que ingrese una contraseña para usuario y la confirme.
    Nota: La opción -c la usamos únicamente la primera vez para que cree el archivo .htdigest .

  7. Después de esto, tenemos que configurar el servidor para que pida la contraseña que configuramos y a que usuarios les damos acceso a nuestro servidor. Para esto editaremos el archivo httpd.conf y ponemos el siguiente contenido:
  8. 	<Directory /var/www>
    	        AuthName "Nombre_Autenticación"
    	        AuthType Digest
    	        AuthDigestDomain http://Dominio_Servidor/
    	        AuthUserFile /etc/apache2/password/.htdigest
    	        Require valid-user
    	</Directory>
    

    Con esto le damos acceso a todos los usuarios que figuran en el archivo .htdigest. Nota: el "Nombre_Autenticación" debe ser igual al "realm" utilizado en el comando htdigest.

  9. Por último reiniciamos apache y tendremos funcionando el módulo de autentificación:
  10. $ /etc/init.d/apache2 restart

Verificación

Para verificar lo anterior basta con entrar a la dirección del servidor. En un navegador entonces colocamos la dirección del servidor:

http://Dominio_Servidor/

Luego de esto deberá aparecer una petición de usuario y contraseña.

Por más información leer la referencia.

Referencia: http://httpd.apache.org/docs/2.0/es/howto/auth.html