Configurer WebDAV avec lighttpd sur Fedora 9
TL;DR
Ce guide montre pas à pas comment activer WebDAV avec lighttpd sur Fedora 9, installer les paquets nécessaires, configurer les modules et créer un hôte virtuel. Suivez les commandes fournies, vérifiez les permissions et redémarrez le service.
Version 1.0
Auteur : Falko Timme
1 Note préalable
J’utilise ici un serveur Fedora 9 avec l’adresse IP 192.168.0.100. Adaptez les chemins, noms d’hôte et utilisateurs à votre environnement.
Important : WebDAV signifie « Web-based Distributed Authoring and Versioning ». C’est un ensemble d’extensions HTTP qui permet d’éditer directement des fichiers sur le serveur sans passer par FTP.
2 Installation de WebDAV
Vous pouvez installer lighttpd (si ce n’est pas déjà fait) ainsi que le module WebDAV pour lighttpd et le paquet httpd-tools (contenant htpasswd) avec la commande suivante :
yum install lighttpd httpd-toolsCréez ensuite les liens de démarrage système pour lighttpd afin qu’il démarre automatiquement au boot, puis lancez le service :
chkconfig --levels 235 lighttpd on
/etc/init.d/lighttpd startOuvrez /etc/lighttpd/lighttpd.conf et activez/ajoutez les modules mod_alias, mod_webdav et mod_auth dans la section server.modules. Il est important que mod_webdav soit listé avant mod_auth.
vi /etc/lighttpd/lighttpd.conf| [...] server.modules = ( # "mod_rewrite", # "mod_redirect", "mod_alias", "mod_access", # "mod_cml", # "mod_trigger_b4_dl", "mod_webdav", "mod_auth", # "mod_status", # "mod_setenv", # "mod_fastcgi", # "mod_proxy", # "mod_simple_vhost", # "mod_evhost", # "mod_userdir", # "mod_cgi", # "mod_compress", # "mod_ssi", # "mod_usertrack", # "mod_expire", # "mod_secdownload", # "mod_rrdtool", "mod_accesslog" ) [...] |
Redémarrez lighttpd après modification :
/etc/init.d/lighttpd restartNotes importantes
- mod_webdav doit apparaître avant mod_auth pour que l’authentification fonctionne correctement avec WebDAV.
- Conservez une copie de sauvegarde de lighttpd.conf avant toute modification.
3 Création d’un hôte virtuel
Nous allons créer un vhost lighttpd (www.example.com) dont le document root sera /var/www/web1/web. Si vous avez déjà un vhost, adaptez ce guide.
Créez le répertoire et définissez lighttpd:lighttpd comme propriétaire :
mkdir -p /var/www/web1/web
chown lighttpd:lighttpd /var/www/web1/webAjoutez ensuite le bloc vhost à la fin de /etc/lighttpd/lighttpd.conf :
vi /etc/lighttpd/lighttpd.conf| [...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" } |
Redémarrez lighttpd :
/etc/init.d/lighttpd restartVérifications et tests rapides
- Vérifiez que le service tourne :
/etc/init.d/lighttpd status- Vérifiez que le port 80 est écouté :
netstat -tulpen | grep :80- Depuis un poste client, testez l’accès HTTP à http://www.example.com/ (ou remplacez par l’IP) et tentez une connexion WebDAV avec un client (Nautilus, Finder, cadaver, Cyberduck, etc.).
Quand ça échoue
- Erreur 401 Unauthorized : vérifiez la configuration d’authentification et le fichier généré par htpasswd.
- Erreur 403 Forbidden : vérifiez les permissions UNIX du document-root (propriétaire et droits) et la configuration mod_access.
- Modifications qui ne se propagent pas : redémarrez lighttpd et videz le cache du client WebDAV.
Contre-exemples et limites
- Si vous utilisez SELinux en mode enforcing, des règles supplémentaires peuvent bloquer l’accès. Vérifiez audit.log et ajustez les contextes SELinux.
- Sur des versions plus récentes de Fedora, les noms de paquets et emplacements de config peuvent différer ; ce guide cible Fedora 9.
Approches alternatives
- Utiliser Apache httpd avec mod_dav et mod_dav_fs pour une intégration WebDAV plus couramment documentée.
- Utiliser un serveur dédié WebDAV (ownCloud/Nextcloud) pour des fonctions collaboratives avancées.
- Pour de simples transferts, préférer SFTP si l’édition distante n’est pas nécessaire.
Mini-méthodologie pour déployer WebDAV
- Planifier : définir chemin, nom d’hôte, utilisateurs et exigences d’authentification.
- Installer paquets requis (lighttpd, httpd-tools).
- Activer modules requis dans lighttpd.conf (mod_webdav avant mod_auth).
- Créer répertoires et corriger permissions.
- Configurer vhost et fichier d’authentification (htpasswd).
- Redémarrer et tester.
- Auditer logs et ajuster sécurité.
Liste de vérification par rôle
- Administrateur système : installer paquets, gérer service, corriger permissions.
- Responsable sécurité : vérifier SELinux/AppArmor, règles firewall, chiffrement des flux si nécessaire.
- Opérateur support : tester accès client, reproduire erreurs courantes, communiquer étapes de rollback.
Sécurité et confidentialité
- Transmettez des identifiants uniquement via HTTPS pour éviter l’interception. Configurez TLS si vous exposez WebDAV en production.
- Évitez les mots de passe simples dans htpasswd. Utilisez des mots de passe robustes et changez-les régulièrement.
- Contrôlez les permissions filesystem pour limiter les écritures aux utilisateurs nécessaires.
- Si des données personnelles sont stockées, vérifiez les exigences locales de confidentialité et conservez les logs nécessaires uniquement pour la durée requise.
Critères d’acceptation
- Le serveur répond sur HTTP(S) pour le vhost configuré.
- Un client WebDAV peut s’authentifier et créer/modifier/supprimer un fichier selon les permissions attendues.
- Les logs du serveur ne montrent pas d’erreurs critiques après redémarrage.
Résumé
Ce guide explique l’installation de lighttpd avec WebDAV sur Fedora 9, l’activation des modules requis, la création d’un vhost et les vérifications à effectuer. Testez l’accès depuis un client WebDAV et sécurisez la communication avec TLS si le service est exposé.
Important : adaptez toujours les exemples (noms d’hôte, chemins, utilisateurs) à votre infrastructure et conservez une sauvegarde de la configuration avant modification.
Matériaux similaires
Installer et utiliser Podman sur Debian 11
Guide pratique : apt-pinning sur Debian
OptiScaler : activer FSR 4 dans n'importe quel jeu
Dansguardian + Squid NTLM sur Debian Etch
Corriger l'erreur d'installation Android sur SD