Configurer WebDAV sur lighttpd et connecter des clients
4 Configurer l’hôte virtuel pour WebDAV
Créez le fichier de mots de passe WebDAV /var/www/web1/passwd.dav avec l’utilisateur test (l’option -c crée le fichier s’il n’existe pas) :
htpasswd -c /var/www/web1/passwd.dav test
Vous serez invité à saisir un mot de passe pour l’utilisateur test.
Important : n’utilisez PAS l’option -c si /var/www/web1/passwd.dav existe déjà — cela recréera le fichier et effacera tous les autres utilisateurs.
Changez ensuite les permissions du fichier afin que seul root et les membres du groupe lighttpd puissent y accéder :
chown root:lighttpd /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.dav
Éditez le vhost dans /etc/lighttpd/lighttpd.conf :
vi /etc/lighttpd/lighttpd.conf
| [...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" alias.url = ( "/webdav" => "/var/www/web1/web" ) $HTTP["url"] =~ "^/webdav($|/)" { dir-listing.activate = "enable" webdav.activate = "enable" webdav.is-readonly = "disable" auth.backend = "htpasswd" auth.backend.htpasswd.userfile = "/var/www/web1/passwd.dav" auth.require = ( "" => ( "method" => "basic", "realm" => "webdav", "require" => "valid-user" ) ) } }
|
La directive alias.url (avec $HTTP[“url”] =~ “^/webdav($|)/“) fait en sorte que l’appel à /webdav active WebDAV, tout en conservant l’accès au document-root complet du vhost. Toutes les autres URL du vhost restent du HTTP classique.
Redémarrez lighttpd :
/etc/init.d/lighttpd restart
5 Tester WebDAV
Installez cadaver, un client WebDAV en ligne de commande :
yum install cadaver
Pour tester :
cadaver http://www.example.com/webdav/
Vous devrez saisir un nom d’utilisateur. Entrez test puis le mot de passe. Si tout fonctionne, l’accès est accordé et WebDAV fonctionne. Tapez quit pour quitter le shell WebDAV :
[root@server1 ~]# cadaver http://www.example.com/webdav/
Authentication required for webdav on server `www.example.com':
Username: test
Password:
dav:/webdav/> quit
Connection to `www.example.com' closed.
[root@server1 ~]#
6 Configurer un client Windows XP pour se connecter au partage WebDAV
La procédure détaillée est décrite ici : https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p2.
Spécifiez le port dans l’URL WebDAV, par exemple : http://www.example.com:80/webdav. Curieusement, cela pousse Windows XP à accepter le nom d’utilisateur ordinaire (par ex. test) — sinon Windows XP attend des noms d’utilisateurs NTLM de la forme www.example.com\test.
Note : l’antislash dans “www.example.com\test” est le séparateur de domaine\user utilisé par NTLM.
7 Configurer un client Linux (GNOME) pour se connecter au partage WebDAV
La procédure est décrite ici : https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p3.
Sur GNOME, vous pouvez généralement utiliser “Se connecter à un serveur” et saisir l’URL http://www.example.com/webdav/ puis vos identifiants.
8 Liens
- WebDAV: http://www.webdav.org
- Lighttpd: http://www.lighttpd.net
- Fedora: http://fedoraproject.org
Bonnes pratiques de sécurité et durcissement
- Toujours préférer HTTPS pour l’accès WebDAV en production (certificat TLS valide). WebDAV transmet des mots de passe en clair si HTTP est utilisé.
- Restreindre les méthodes WebDAV si possible (PROPFIND, PUT, DELETE selon besoins). Si vous n’avez pas besoin d’écriture, définissez webdav.is-readonly = “enable”.
- Limitez l’accès réseau (firewall) aux adresses IP ou sous-réseaux nécessaires.
- Gardez le fichier passwd.dav dans un emplacement non accessible publiquement et avec permissions minimales (640, propriétaire root:lighttpd).
- Considérez l’usage d’un backend d’authentification centralisé (LDAP) pour les environnements multi-utilisateurs.
Liste de contrôle administrateur (étapes de mise en place)
- Créer passwd.dav et ajouter les utilisateurs : htpasswd -c /var/www/web1/passwd.dav test
- Poser permissions : chown root:lighttpd … ; chmod 640 …
- Modifier /etc/lighttpd/lighttpd.conf et ajouter le bloc WebDAV
- Redémarrer lighttpd et vérifier le journal système (syslog/ journalctl)
- Tester localement avec cadaver
- Tester depuis les clients cibles (Windows, GNOME)
- Activer TLS et tester à nouveau
- Documenter comptes et procédures de secours
Dépannage rapide
- Erreur 401 Unauthorized : vérifier auth.backend.htpasswd.userfile, permissions et format htpasswd.
- Erreur 403 Forbidden : vérifier owner/groupe et permissions (chmod 640) du fichier passwd.dav et du document-root.
- WebDAV non listé ou 405 Method Not Allowed : s’assurer que webdav.activate = “enable” et que lighttpd charge le module mod_webdav.
- Problèmes Windows : ajouter le port explicite (:80) dans l’URL ou activer l’accès via HTTPS ; vérifier les stratégies locales de Windows qui peuvent bloquer WebDAV.
- Logs : consulter /var/log/lighttpd/error.log et /var/log/messages ou journalctl pour voir les erreurs au démarrage ou lors des requêtes.
Critères d’acceptation
- Un utilisateur valide peut se connecter via cadaver et lister/Créer/Fichier selon webdav.is-readonly.
- Les autres URL du vhost restent accessibles en HTTP classique.
- Les tentatives d’accès anonymes sont refusées (401).
- Le fichier /var/www/web1/passwd.dav n’est pas lisible par des comptes non autorisés.
Modèles et scénarios de tests (mini-suite)
- Test 1 : Connexion basique (cadaver) avec utilisateur existant → doit réussir.
- Test 2 : Connexion avec utilisateur inexistant → doit renvoyer 401.
- Test 3 : Accès à /webdav sans authentification → doit demander authentification.
- Test 4 : Accès à /index.html du vhost sans auth → doit être servi normalement.
- Test 5 : Vérifier que HTTPS protège les identifiants (si TLS activé).
Glossaire (une ligne)
- WebDAV : extension HTTP permettant la gestion distante de fichiers (Web Distributed Authoring and Versioning).
- htpasswd : utilitaire pour gérer les fichiers de mots de passe au format Apache/htpasswd.
- lighttpd : serveur HTTP léger, adapté aux environnements à faible consommation de ressources.
Résumé : Après avoir créé le fichier de mots de passe et adapté votre vhost, redémarrez lighttpd et testez avec cadaver. Protégez toujours WebDAV par TLS en production et limitez les permissions et méthodes selon le principe du moindre privilège.
Matériaux similaires

Ajouter des ports USB à votre ordinateur

Corriger l'erreur program dans Photoshop
Configurer WebDAV sur lighttpd

Supprimer l'historique des recherches YouTube

Récupérer une Snapstreak perdue sur Snapchat
