Dossiers Webdav Apache et Windows 7

Publié le 27 mai 2011 par Rumbaya

Serveur Debian Lenny – Apache 2.2.9 avec mod_dav
Clients Windows 7 32 et 64 bits

Microsoft n’aime décidément pas les dossiers Webdav, surtout quand ils sont servis par un serveur non MS, Apache par exemple. Sous Windows 7, si on essaie d’ajouter un dossier Webdav servi par Apache avec l’authentification basique, on obtient l’erreur Le dossier que vous avez entré ne semble pas être valide. Choisissez-en un autre. J’aime beaucoup les messages d’erreur Windows, c’est bon de se sentir aidé…

Le problème est lié au type d’authentification utilisé par Apache, l’authentification basique (AuthType Basic) n’est pas supportée par Windows 7. En http on pourrait comprendre pour des raisons de sécurité, le mot de passe est transmis en clair, mais en https c’est pareil alors que la connexion est cryptée dans un tunnel SSL. Il y avait déjà eu le même problème avec Vista, réglé par un patch, mais pour l’instant rien ne s’annonce pour Windows 7.

Que peut-on faire?
Si on n’a pas accès à la configuration du serveur, il y a des clients Webdav qui permettent de contourner le problème, Bitkinex semble avoir la cote actuellement mais je ne l’ai pas testé.

Coté serveur, Apache propose un autre mode d’authentification, digest, qui a le statut « Experimental », d’ailleurs plusieurs directives documentées ne fonctionnent pas (AuthDigestGroupFile par exemple) mais globalement ça marche et c’est accepté par Windows 7.

Un exemple de config Apache :

Dav on
AuthName "monwebdav"
AuthType digest
AuthDigestDomain /webdav http://mondomaine/webdav
AuthUserFile /www/auth/webdav
Require valid-user

Pour créer le fichier des utilisateurs, ici /www/auth/webdav avec le premier utilisateur toto, on utilise htdigest :

htdigest -c /www/auth/webdav monwebdav toto

Le « realm » de htdigest doit correspondre à la directive AuthName

Pour les logins suivants on enlèvera le -c :

htdigest /www/auth/webdav monwebdav turlututu

lien

How to fix Windows 7 64 bits Webdav