J'essaie de configurer un serveur svn pour qu'il utilise le compte système linux pour l'authentification au lieu d'un fichier htpasswd indépendant. J'utilise Fedora 16 et j'ai suivi le présent manuel afin d'installer et de configurer mod_authnz_external et pwauth, j'ai configuré le fichier /etc/httpd/conf.d/subversion.conf comme suit :
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule authnz_external_module modules/mod_authnz_external.so
AddExternalAuth pwauth /usr/local/libexec/pwauth
SetExternalAuthMethod pwauth pipe
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
AuthType Basic
AuthName "Subversion repositories PAM"
AuthBasicProvider external
AuthExternal pwauth
Require valid-user
</Location>
Mais je ne peux pas accéder au dépôt, tous les mots de passe sont rejetés. Le fichier journal d'Apache montre l'erreur suivante :
exec of '/usr/local/libexec/pwauth' failed: (13) Permission denied
[Tue Jan 29 11:23:18 2013] [error] [client ::1] AuthExtern pwauth [/usr/local/libexec /pwauth]: Failed (255) for user tom
[Tue Jan 29 11:23:18 2013] [error] [client ::1] user tom: authentication failure for "/svn/project/trunk": Password Mismatch
Qu'est-ce qui ne va pas ? Merci d'avance.
P.S. J'ai essayé pwauth pour l'utilisateur apache (sudo -u apache /usr/local/libexec/pwauth) et cela fonctionne très bien .