WebDAV Server konfigurieren

Zum Ende der Metadaten springen
Go to start of metadata
Weiterführende Fachliteratur

Apache 2: Skalierung, Performance-Tuning, CGI, SSI, Authentifizierung, Sicherheit, VMware von Sascha Kersken. Praxisorientiertes Lehrbuch und Referenz, auch für Einsteiger geeignet.
Vom gleichen Autor: Praktische Online-Referenz der wichtigsten Apache-Direktiven.


Webserver einrichten und administrieren von Klaus M. Rodewig. Aufbau, Betrieb und Administration eines Webservers, von der Auswahl des Providers über Hard- und Software bis hin zu rechtlichen Fragen.


Apache - kurz und gut von Andrew Ford und Sascha Kersken. Übersichtliche Zusammenfassung mit den wichtigsten Apache-Informationen, für Fortgeschrittene.


Apache Webserver 2. Installation, Konfiguration, Programmierung von Sebastian Wolfgarten.

Am einfachsten läßt sich WebDAV mit dem Apache 2.x konfigurieren. Es soll auch mit Apache 1.3.x gehen, da braucht man aber ein separates Modul, während bei Apache 2.x der WebDAV Code bereits enthalten ist.

Wichtig ist ebenfalls, dass der Apache für SSL eingerichtet wird. Die WebDAV Funktionen von Microsoft Windows XP entsprechen nicht genau dem Standard, und der Zugriff von Microsoft Windows auf einen Apache WebDAV Server funktioniert nur dann, wenn man das https Protokoll verwendet.

Der Apache wird mit folgenden Optionen kompiliert (hier am Beispiel von Apache 2.2.0):

#!/bin/bash
INSTALLDIR=/opt/apache-2.2.0
OPTIONS="--prefix=$INSTALLDIR --enable-so \
                              --enable-dav \
                              --enable-proxy \
                              --enable-auth-digest \
                              --enable-ssl"

./configure $OPTIONS

Und hier die Optionen in der Datei /opt/apache-2.2.0/conf/extras/httpd-dav.conf (nicht vergessen, diese Datei in der conf/httpd.conf zu inkludieren). Diese Konfiguration gestattet Lese- und Schreibzugriff für jeden User, der einen Account auf dem Server hat.

DavLockDB "/var/run/DavLock"

Alias /webdav "/home/schirmacher.de/www/webdav"

<Directory "/home/schirmacher.de/www/webdav">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

<Location /webdav>
    Dav On
    AuthType Digest
    AuthName Server
    AuthDigestDomain /webdav/ https://www.schirmacher.de/webdav/
    AuthDigestProvider file
    AuthUserFile "/home/schirmacher.de/conf/user.passwd"
    <LimitExcept OPTIONS>
        Require valid-user
    </LimitExcept>
</Location>

Das Erstellen der Passwort-Datei erfolgt mit folgendem Kommando:

/opt/apache-2.2.0/bin/htdigest /home/schirmacher.de/conf/user.passwd Server schirmacher

Wichtig ist, dass der zweite Parameter mit der Angabe für "AuthName" übereinstimmen muss. Das Password wird interaktiv abgefragt und in verschlüsselter Form in der Passworddatei abgelegt.

Weitere Berechtigungen

WebDAV ermöglicht es, die Zugriffsberechtigungen fein abzustufen. Ein häufig benötigter Fall ist die Einrichtung von zwei Gruppen für Nur-Lese- und Schreib-Lese-Zugriff.

Das erreicht man am einfachsten wie folgt. Man legt eine "groups" Datei mit den Benutzergruppen "ro" und "rw" (für Nur-Lese- und Schreib-Lese-Zugriff) an:

$ cat /home/schirmacher.de/conf/groups
rw:schirmacher
ro:user1 user2

Dann referenziert man diese Benutzergruppen in seiner Konfiguration:

<Location /webdav>
    Dav On
    AuthType Digest
    AuthName Server
    AuthDigestDomain /webdav/ https://www.schirmacher.de/webdav/
    AuthDigestProvider file
    AuthUserFile "/home/schirmacher.de/conf/user.passwd"
    AuthGroupFile "/home/schirmacher.de/conf/groups"
    <LimitExcept OPTIONS>
        Require valid-user
    </LimitExcept>
    <Limit COPY DELETE LOCK MKCOL MOVE POST PUT UNLOCK>
        Require group rw
    </Limit>
</Location>

Im einzelnen passiert folgendes: Ließe man sämtliche <Limit> und <LimitExcept> Klauseln weg, dann würde der WebDAV Server für jedermann schreib- und lesbar sein. Das ist meistens nicht gewünscht.

Der einzige WebDAV Request, der ohne Anmeldung zulässig sein sollte, ist der OPTIONS Request; dieser wird nämlich für die Konfiguration des WebDAV Servers von Windows aus benötigt, und zwar noch bevor der Dialog mit dem Usernamen und Passwort kommt. Schlägt er fehl, teilt Windows dem User mit, dass es Probleme beim Zugriff auf den WebDAV Server gibt. Durch die Klausel <LimitExcept OPTIONS> erreicht man, dass OPTIONS der einzige Request ist, der kein Passwort benötigt.

Die Klausel <Limit COPY DELETE LOCK MKCOL MOVE POST PUT UNLOCK> stellt sicher, dass nur User in der Gruppe "rw" Schreibzugriffe ausführen dürfen.

Client Konfiguration

Und hier die Anleitung, wie man seinen PC mit dem WebDAV Server verbindet.

Noch Fragen? Dann bitte Kommentar hinterlassen.

 
Bookmarks

Ist die Seite nützlich? Dann bitte weiterempfehlen!

| | More
Seiteninhalt
Bereichsinhalt
Letzte Google Suche

Stichwörter

webdav webdav Löschen
linux linux Löschen
Geben Sie Stichwörter ein, die dieser Seite hinzugefügt werden sollen:
Please wait 
Sie suchen ein Stichwort? Beginnen Sie einfach zu schreiben.
  1. 12.Dez.2006

    Anonym sagt:

    Nette Zusammenfassung.  Eine Kleinigkeit: müsste es nicht AuthDigestFile s...

    Nette Zusammenfassung. 

    Eine Kleinigkeit: müsste es nicht AuthDigestFile sein und nicht AuthUserFile?

    1. 13.Dez.2006

      Arne Schirmacher sagt:

      ...der Einwand ist plausibel. Bei mir läuft es jedenfalls auch mit AuthUserFile,...

      ...der Einwand ist plausibel. Bei mir läuft es jedenfalls auch mit AuthUserFile, und ich kann den Server erstmal nicht runterfahren, um AuthDigestFile zu testen.

      1. 27.Nov.2007

        Anonym sagt:

        Es gab vorher AuthUserFile und AuthDigestFile. Ab Version 2.2 werden beide Authe...

        Es gab vorher AuthUserFile und AuthDigestFile. Ab Version 2.2 werden beide Authentifizierungsarten in der AuthUserFile abgelegt.

  2. 23.Mai.2007

    Anonym sagt:

    Du schreibst: Wichtig ist ebenfalls, dass der Apache für SSL eingerichtet wird....

    Du schreibst:

    Wichtig ist ebenfalls, dass der Apache für SSL eingerichtet wird. Die
    WebDAV Funktionen von Microsoft Windows XP entsprechen nicht genau dem
    Standard, und der Zugriff von Microsoft Windows auf einen Apache WebDAV
    Server funktioniert nur dann, wenn man das https Protokoll verwendet.
    

     Ich habe mit WindowsXP genau die entgegengesetzte Erfahrung gemacht. Zugriff ist nur über http und nicht über https möglich. Du kannst bei der Verbindung zwar die https url angeben, aber de facto wird die http verbindung verwendet. Ist diese nicht vorhanden, dann ist auch kein Zugriff möglich. Wie das ganze unter Vista aussieht weiß ich nicht.

  3. 24.Jul.2007

    Anonym sagt:

    Die Beschreibung mit <LimitExcept OPTIONS> usw. macht ja Sinn, klappt abe...

    Die Beschreibung mit <LimitExcept OPTIONS>

    usw. macht ja Sinn, klappt aber leider bei mir nicht. Auch wer sich ohne Mitgliedschaft in rw anmeldet hat alle Rechte.

    Ich musste <Limit HEAD GET POST OPTIONS PROPFIND>

    verwenden um das gewünschte Verhalten zu erreichen.

     

    1. 02.Aug.2009

      Anonym sagt:

      Vielen Dank für Deinen Artikel, Arne\! Er hat mich auf den richtigen Weg gebrac...
      Vielen Dank für Deinen Artikel, Arne\! Er hat mich auf den richtigen Weg gebracht. Allerdings klappte auch bei mir erst die modifizierte Version:
      <LimitExcept OPTIONS>
          Require group rw
      </LimitExcept>
      <Limit OPTIONS HEAD GET PROPFIND>
          Require group ro
      </Limit>

      Dadurch wird erst einmal alles ausser OPTIONS nur der Gruppe rw ermöglicht. Danach erfolgt eine Aufweichung/Differenzierung der Zugriffsrechte, indem HEAD, GET und PROPFIND zusätzlich der Gruppe ro ermöglicht wird (Ob da OPTIONS nochmal in der Liste stehen muss konnte ich nicht verifizieren). Diese Vorgehensweise hat den auch Vorteil, dass nicht aufgeführte Methoden auf die Gruppe rw beschränkt sind. Ich hoffe, da ist kein Denkfehler drin, aber zumindest funktioniert es so bei mir...

Kommentar hinzufügen