Installer un serveur collaboratif de données partagées WEBDAV

Procédure simplifiée et verifiée le 18/01/2019 :

Installation du serveur WEBDAV sous Linux Debian

On installe apache (+ outils) s’il n’est pas déjà présent

# apt-get install apache2 apache2-utils cadaver
# a2enmod dav dav_fs dav_lock rewrite
# systemctl restart apache2
# mkdir /var/www/webdav
# chown www-data /var/www/webdav
# ls -alF /var/www/
# nano /etc/apache2/sites-available/webdav.conf

et copier/coller le contenu ci-dessous :
NameVirtualHost *
<VirtualHost *:80>
ServerAdmin webdav@1ere-page.fr
DocumentRoot /var/www/webdav/
<Directory /var/www/webdav/>
Options Indexes MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Alias /webdav /var/www/webdav
<Location /webdav>
DAV On
AuthType Basic
AuthName “webdav”
AuthUserFile /var/www/webdav/passwd.dav
Require valid-user
</Location>

# a2ensite webdav.conf
# htpasswd -cb /var/www/webdav/passwd.dav lionel [saisir MdP]: 1 ligne par user à ajouter
sinon retirer l’option -b

# chown root:www-data /var/www/webdav/passwd.dav
# chmod 640 /var/www/webdav/passwd.dav
# service apache2 restart

Accéder aux données partagées ?

Accès en mode web : Tous OS :  via le navigateur internet  :    192.168.0.106/webdav

Accès en mode MaJ :
1) Depuis Linux : Copier/coller dans Gestionnaire de fichiers :  dav://192.168.0.106/webdav
2) Depuis Windows : Ajouter un param. dans webdav.conf ou utiliser le logiciel CarotDav

 


Notes en plus ..

Wikipedia : WebDAV permet de simplifier la gestion de fichiers avec des serveurs distants. Il permet de récupérer, déposer, synchroniser et publier des fichiers (et dossiers) rapidement et facilement. L’objectif principal de WebDAV est de rendre possible l’écriture à travers le web et pas seulement la lecture de données. WebDAV permet à plusieurs utilisateurs d’éditer le contenu d’un dossier web simultanément. Il saura gérer les droits d’accès aux fichiers (ou dossiers), en verrouillant momentanément les fichiers et dossiers édités.

1) Installation du serveur WEBDAV sous Linux Debian

Ouvrir un terminal en SU

On installe apache (+ outils) s'il n'est pas déjà présent
# apt-get install apache2 apache2-utils cadaver
# a2enmod dav dav_fs dav_lock rewrite
# systemctl restart apache2
# mkdir /var/www/webdav
# chown www-data /var/www/webdav
# ls -alF /var/www/
# nano /etc/apache2/sites-available/webdav.conf
et copier/coller le contenu ci-dessous :
NameVirtualHost *
<VirtualHost *:80>
ServerAdmin [adresse mail de l'administrateur : ex lanadmin@hit..fr]
DocumentRoot /var/www/webdav/
<Directory /var/www/webdav/>
Options Indexes MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Alias /webdav /var/www/webdav
<Location /webdav>
DAV On
AuthType Basic
AuthName "webdav"
AuthUserFile /var/www/webdav/passwd.dav
Require valid-user
</Location>
# a2ensite webdav.conf
# htpasswd -cb /var/www/webdav/passwd.dav lionel [saisir MdP] : 1 ligne par user à ajouter
# chown root:www-data /var/www/webdav/passwd.dav
# chmod 640 /var/www/webdav/passwd.dav
# service apache2 restart

2) Tester le bon fonctionnement du serveur WEBDAV

# apt-get install cadaver
# cadaver http://brain.hit..c/webdav

3) Donner les droits en écriture à tous les users authentifiés

De base WebDav met des droits en lecture seule, ajouter ou modifier le fichier .conf ainsi :

# nano /etc/apache2/sites-available/webdav.conf

<Limit GET OPTIONS PROPFIND PUT POST DELETE PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
  require valid-user
</Limit>

Un fois en place, nous allons personnaliser un peu la config de WebDAV pour le rendre le plus compatible possible avec toutes les plateformes :

nano /etc/apache2/conf-enabled/webdav.conf et on y insère ceci :

DavLockDB "/ect/apache2/DavLock"

#
# The following directives disable redirects on non-GET requests for
# a directory that does not include the trailing slash.  This fixes a
# problem with several clients that do not appropriately handle
# redirects for folders with DAV methods.
#
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[01234]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
BrowserMatch " Konqueror/4" redirect-carefully

et relancer le service Apache :  # service apache2 restart

4) Accéder aux données partagées …

Accès via le navigateur internet  :    192.168.0.106/webdav/partage/

Copier/coller dans Gestionnaire de fichiersdav://192.168.0.106/webdav/partage/

 

Ref.  Tuto en doc : https://ungeek.fr/mise-en-place-dun-serveur-webdav-avec-apache2/
Tuto en video : https://www.youtube.com/watch?v=vzG6l6R3VrI

 

Utiliser evolution pour gérer l’agenda

Il faut se connecter avec une adresse email valide pour utiliser l’agenda : KO

Il faut a priori installer CalDav et CardDav : cf https://www.williamjbowman.com/blog/2015/07/24/setting-up-webdav-caldav-and-carddav-servers/

Réf installation de WebDav : https://www.techrepublic.com/article/how-to-enable-webdav-on-your-ubuntu-server/

Réf. utilisations de WebDav : https://doc.ubuntu-fr.org/webdav