Configuration de Webdav
Webdav est une surcouche d'apache qui permet de stocker des fichiers via le serveur web.
Cela correspond a un partage samba par exemple, mais directement sur apache.
Prérequis
Un serveur apache avec le support de webdavJ'ai fait un tuto sur la compilation d'un serveur apache avec support webdav ici
Configuration d'apache
Je prends comme configuration:- Davlock: /etc/apache2/DavLock/
- Authfile: /usr/local/www/DavUsers
- Repertoire partagé webdav: /usr/local/www/webdav/ qui est un sousrep d'un virtualhost, donc accessible du web
Commencons par créer le DavLock (repertoire de travail de webdav):
mkdir /etc/apache2/DavLock/ chown nobody:nobody /etc/apache2/DavLock/
Maintenant nous allons créer le fichier htpassword, qui contient les login/password des gens qui peuvent se connecter
htpasswd -c /usr/local/www/DavUsers LOGIN chown nobody /usr/local/www/DavUsers
httpd-dav.conf
Nous allons maintenant expliquer a pache comment configurer notre webdav
Ce fichier qui se trouve dans /etc/apache2/conf/extras/ mais cela depend de votre distribution.
Comme le support de webdav a été precisé a la compilation, pas besoin d'appeller un LoadModule
DavLockDB /etc/apache2/DavLock/
DAVMinTimeout 600
DAVDepthInfinity On
<Directory "/usr/local/www/webdav/">
Dav On
Order Allow,Deny
Allow from all
AllowOverride None
Options Indexes
AuthType Basic
AuthName "Acces restreint aux calendriers"
AuthUserFile /usr/local/www/DavUsers
Require valid-user
</Directory>
Maintenant qu'apache est configuré, il faut le relancer pour qu'i
prenne en compte les changements
apachectl graceful
Test de connexion
Pour cela il faut un client webdav, cadaver en est un, mais sous Windows, IE peut se connecter en webdav, sur Mac le Finder et Safari en sont capable...Aller avec ie ou Safari sur l'adresse de votre partage webdav, la un prompt vous demandera votre login si tout va bien.
Tappez celui que vous avez rentré à la première étape de l'htpasswd, et vous devriez voir le listing d'un repertoire vide :)
Si ce n'est pas le cas, allez voir directement vos logs apache pour savoir ce qui ne lui plait pas!
Approfondir
Webdav est capable de bien des choses, dont la gestion des droits par utilisateurs.b Il est par exemple possible de limiter la suppression qu'a un seul utilisateur:
<LimitExcept DELETE>
Require user MACHIN
</Limit>
Il est aussi possible de limiter l'accès a son réseau local uniquement, voir une ip
Order Deny,Allow
Deny from all
Allow from 192.168.10
On peut empecher l'execution des scripts (php par exemple)
ForceType text/plainIl est aussi possible de mettre les login webdav en base mysql grâce a Auth-Type.
Je vais essayer de détailler bientôt toute ces options plus "avancées".




