Configuration de Webdav
Webdav est une surcouche d'apache qui se comporte comme un partage de fichiers.
Il permet de lire et stocker des fichiers sur un serveur uniquement en passant par 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
Voici les chemins ou JE met les fichiers nécessaires à webdav:- 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
Maintenant qu'apache est configuré, il faut le relancer pour qu'i prenne en compte les changementsDavLockDB /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>
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
<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".