WebDAV bietet einen sicheren Zugang zu einem Web-Server. Die folgende Anleitung basiert auf einem Ubuntu-Server und dürfte auf einem anderen Debian-System so ähnlich funktionieren.
Auf der Domäne www.musterseite.de soll WebDAV so eingerichtet werden, dass jeder alle Seiten lesen kann aber nur authorisierte Personen (Anton, Berta) schreibend darauf zugreifen können. Das Übermitteln der Passwörter soll verschlüsselt werden.
Die Konfigurationsdateien von apache2 liegen im Verzeichnis /etc/apache2. Im Unterverzeichnis "sites-available" befindet sich die Datei "musterseite", die den Webauftritt unseres Szenarios konfiguriert. Hier muss im Abschnitt <Virtualhost *:80> .. </Virtualhost> folgender Code eingefügt werden.
<Virtualhost *:80>
<Directory "/var/www/musterseite/">
DAV on
<LimitExcept GET HEAD OPTIONS PROPFIND>
AuthType Digest
AuthName "WebDAV"
AuthDigestFile /var/www/.webdav.musterseite.passwd
Require valid-user
</LimitExcept>
</Directory>
</Virtualhost>
Die Authentifizierung "Digest" überträgt verschlüsselte Kennwörter. Unverschlüsselte Anmeldung erfolgt mit den Werten
AuthType Basic
AuthUserFile /var/www/.webdav.passwd
Damit das Ganze funktioniert muss der Apache-Server die Module mod_auth_digest, mod_dav und mod_dav_fs unterstützen. Ob der Webserver diese Module bereits unterstützt, kann leicht durch folgende Testseite herausgefunden werden:
Datei: test.php auf dem Webserver
<html>
<body>
<?php phpinfo(); ?>
</body<br /> </html>
Im Abschnitt apache2handler - Loaded Modules müssten diese Module aufgeführt werden.
Nach den Änderungen muss der Apache-Server (als root) neu gestartet werden:
/etc/init.d/apache2 restart
Die Benutzerfür den Zugriff werden mit dem Programm htdigest angelegt:
> htdigest -c /var/www/.webdav.digest.passwd WebDAV Anton
... zweimalige Passworteingabe
> htdigest /var/www/.webdav.digest.passwd WebDAV Berta // ohne -c !!
... zweimalige Passworteingabe
Für die Authentifizierungsmethode "Basic" wird das Programm htpasswd verwendet:
> htpasswd -c /var/www/.webdav.passwd Anton
... zweimalige Passworteingabe
> htpasswd /var/www/.webdav.passwd Berta // ohne -c !!
... zweimalige Passworteingabe
Damit der Zugriff funktioniert muss bei Debian das Paket "favfs2" installiert sein. In der Konsole kann dann das WebDAV-Verzeichnis zum Beispiel nach "web" gemountet werden.
> mkdir web
> sudo mount -t davfs www.musterseite.de web
> Benutzername: xxxxx
> Passwort: xxxxx
>
Im Verzeichnis "web" kann nun auf alle Dateien der Webseite zugegriffen werden. Wichtig ist, dass am Ende das Verzeichnis wieder mit umount ausgehängt wird. Dabei werden Schreibzugegriffe endgültig abgeschlossen.
> sudo umount web