Authentification digest apache 2

Bonsoir à tous,

J’aimerais faire de l’authentification digest, je me suis inspiré de la documentation apache pour la mise en place, cependant, si j’en viens à vous demander, c’est que cela ne fonctionne pas :smiley:

Le module auth_digest est bien activé :

root@****:~# ls /etc/apache2/mods-enabled/ | grep digest lrwxrwxrwx 1 root root 34 janv. 14 18:44 auth_digest.load -> ../mods-available/auth_digest.load

Mon fichier est telle que :

[code]<VirtualHost *:80>

    ServerName wiki.****
    ServerAdmin webmaster@****

    DocumentRoot /var/www-wiki

    <Location />
            AuthType Digest
            AuthName "Access restreint"
            AuthDigestDomain /
            AuthDigestProvider file
            AuthUserFile /var/private/restricted_users
            Require valid-user
    </Location>

    <Directory /var/www-wiki/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined
[/code]

Et j’ai créé mon utilisateur telle que :

avec le mot de passe test.

Le fichier appartient à root au niveau des droits, et est accessible comme ceci : -rw-r–r--, il contient alors :

Le site me demande bien une authentification, cependant, l’identification ne d’effectue pas.

Les log m’affiche :

[Tue Jan 14 19:26:59 2014] [error] [client 195.132.41.124] Digest: user `test' in realm `Access restreint' not found: / [Tue Jan 14 19:28:05 2014] [error] [client 195.132.41.124] Digest: user `test2' in realm `Access restreint' not found: / [Tue Jan 14 19:28:30 2014] [error] [client 195.132.41.124] Digest: user `test3' in realm `Access restreint' not found: / [Tue Jan 14 19:30:40 2014] [error] [client 195.132.41.124] Digest: user `test4' in realm `Access restreint' not found: /

J’ai tenté de créer trois autres utilisateurs avec une authentification md5 et sha1 avec le mot de passe test :

test2:test2:9f06243abcb89c70e0c331c61d871fa7 test3:test3:a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 test4:test4:qvVEHzMZn.dbM

Le fichier des utilisateurs est bien pris en compte par apache, car si je le supprime, j’ai une erreur dans les logs lors de l’authentification :

[Tue Jan 14 19:35:36 2014] [error] [client 195.132.41.124] (2)No such file or directory: Could not open password file: /var/private/supinfo_users [Tue Jan 14 19:35:36 2014] [error] [client 195.132.41.124] (2)No such file or directory: Could not open password file: /var/private/supinfo_users

Avez-vous été confronter à ce problème ?

Cordialement,

L’erreur semble venir de ton utilisation de htdigest.

httpd.apache.org/docs/2.2/programs/htdigest.html

sinon, une remarque : c’est pas super sécurisé comme type d’authentification, il faudrait encapsuler le tout dans du SSL (mais dans ce cas, autant utiliser l’authentification basique, c’est un peu plus simple à mettre en place)

Merci de ta réponse,

Oui je sais que l’authentification digest n’est pas le truc hyper sécu, je rajouterais une couche SSL, mais avec StartSSL, afin de ne pas avoir le message du certificat autosigné, mais un peu plus tard :slightly_smiling:

Je regarde ton lien, et te donne réponse :slightly_smiling:

J’avais pas vue, mais c’est la doc apache que j’ai déjà utilisé.

Pourquoi dis tu que que l’erreur viens de l’utilisation de htdigest ?

la valeur “realm” ne correspond pas dans ton fichier htdigest, à celle déclarée dans ton vhost :stuck_out_tongue:

Merci de ta réponse, je vais checker tout ça :slightly_smiling:

Ok, c’est bien ça, je n’avais pas compris qu’il fallais faire la correspondance avec l’AuthName

Merci pour la solution :slightly_smiling: