documentations:mod_dav_ldap

~~DISCUSSION~~

Installation d'un mod_dav sur apache 2.2 avec une authentification LDAP sur une Debian(Etch)

Préambule

Vous voulez protéger un serveur WebDAV votre serveur Web Apache et vous avez une base d'authentification LDAP. Suivez le guide …

Prérequis

Il vous faut un serveur Debian(Etch) avec un serveur apache 2.2.

En gros il vous faut les paquets :

  • apache2
  • apache2-mpm-prefork
  • apache2.2-common

C'est ce que j'ai et ça fonctionne trés bien. (Un jour je ferais la doc pour l'installation de apache mais c'est easy)

Il vous faut aussi une base de compte LDAP pour vous authentifier. (Un jour je ferais la doc pour l'installation d'un serveur LDAP)

Mise en place ...

Je me met en tant que root pour éviter les sudo.

des modules

Il faut mettre en place les modules pour l'authentification LDAP : (voir ici)

Il faut mettre en place les modules pour le DAV :

Serveur Apache

# a2enmod dav_fs
Enabling dav as a dependency
Module dav installed; run /etc/init.d/apache2 force-reload to enable.
Module dav_fs installed; run /etc/init.d/apache2 force-reload to enable.
#

Et voilà, pas compliqué !

du repertoire DAV

On va créer un répertoire /var/webdav spécifique à WebDAV avec les droits pour apache :

Serveur Apache

# mkdir /var/webdav
# chmod 770 /var/webdav
# chown :www-data /var/webdav
#

de la configuration Apache

diter le fichier de configuration du site à protéger :

Serveur Apache

# vi /etc/apache2/sites-enabled/000-default
...

Rajouter dans votre virtualhost (exemple pour /webdav) :

/etc/apache2/sites-enabled/000-default

DavLockDB /var/lock/DAV/DavLockDB
 
Alias /webdav /var/webdav
<Location /webdav>
    Dav On
 
    AuthType Basic
    AuthName DAV
    AuthBasicProvider ldap
    AuthLDAPUrl ldap://<serveurldap>:389/ou=people,dc=mydc?uid?<one|sub>
    require ldap-filter &(uid=*)
 
</Location>
  • DavLockDB /var/lock/DAV/DavLockDB : Donne le fichier lockDB pour webDAV
  • Dav On : Active le webdav sur cette location

Pour le restes, c'est de l'authentification LDAP.

Test !

On force le rechargement de Apache :

Serveur Apache

# /etc/init.d/apache2 force-reload 
Forcing reload of web server (apache2)... waiting .
#

Sur un client debian, on installe cadaver un petit client webdav en ligne de commande :

Client Debian

$ sudo apt-get install cadaver
...
$

Puis on teste :

Client Debian

$ cadaver http://<serveur>/webdav
Authentication required for DAV on server `<serveur>':
Username: >username>
Password: 
dav:/webdav/> ls
Listing collection `/webdav/': collection is empty.
dav:/webdav/> put audio_04.wav 
Uploading audio_04.wav to `/webdav/audio_04.wav':
Progress: [=============================>] 100,0% of 31403948 bytes succeeded.
dav:/webdav/> ls
Listing collection `/webdav/': succeeded.
        audio_04.wav                    31403948  déc  5 22:03
dav:/webdav/> quit
Connection to `<serveur>' closed.
$

Yepee !!

Références

documentations/mod_dav_ldap.txt · Dernière modification: 2008/03/19 11:53 (modification externe)