<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.ccc-mannheim.de/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Files%2FWebDAV</id>
	<title>Files/WebDAV - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://www.ccc-mannheim.de/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Files%2FWebDAV"/>
	<link rel="alternate" type="text/html" href="https://www.ccc-mannheim.de/mediawiki/index.php?title=Files/WebDAV&amp;action=history"/>
	<updated>2026-04-19T17:17:11Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in C3MAWiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://www.ccc-mannheim.de/mediawiki/index.php?title=Files/WebDAV&amp;diff=155&amp;oldid=prev</id>
		<title>Scytale: öffentlich/Pausiert</title>
		<link rel="alternate" type="text/html" href="https://www.ccc-mannheim.de/mediawiki/index.php?title=Files/WebDAV&amp;diff=155&amp;oldid=prev"/>
		<updated>2013-09-24T21:56:04Z</updated>

		<summary type="html">&lt;p&gt;öffentlich/Pausiert&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Pausiertes Projekt|Kontakt=pcopfer|öffentlich=ja}}&lt;br /&gt;
Kleines HowTo für einen WebDAV Server mit einem Apache2 Server auf Debain. Wie Üblich ohne Garantie auf Richtigkeit. Wer Fehler findet, Verbesserungsvorschläge hat o.ä. bitte auf der Diskussionsseite eintragen.&lt;br /&gt;
&lt;br /&gt;
==Benötigt==&lt;br /&gt;
Dieses HowTo benötigt:&lt;br /&gt;
* Einen Installierten Apache Server&lt;br /&gt;
* mit aktiviertem SSL&lt;br /&gt;
* und dem Apache Modul auth_digest&lt;br /&gt;
&lt;br /&gt;
==Vorbereitungen==&lt;br /&gt;
Als erster Schritt müssen die Module dav und dav_fs im Apache aktiviert werden. Diese sind zumindest bei Debian Standart mäßig bei der apt-get Installation von Apache dabei.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ a2emod dav&lt;br /&gt;
$ a2emod dav_fs&lt;br /&gt;
$ /etc/init.d/apache2 restart&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Weiterhin werden natürlich noch Verzeichnisse benötigt um die Dateien abzulegen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ mkdir /var/webdav&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Ordner sollten dem Apache User (Standart www-data) zugeordnet sein:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ chown www-data:www-data /var/webdav/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es werden noch die entsprechenden User und Gruppendateien benötigt. Dafür wird ein Verzeichnis benötig.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ mkdir /var/webauth/&lt;br /&gt;
$ mkdir /var/webauth/webdav/&lt;br /&gt;
$ mkdir /var/webauth/webdav/davlockdb/&lt;br /&gt;
$ chown www-data:www-data /var/webauth/webdav/davlockdb/&lt;br /&gt;
$ cd /var/webauth/webdav/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jetzt werden die User angelegt. Wichtig ist hier das der Name des freizugebenden Bereichs auch in der config Richtig anzugeben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ htdigest -c .htuser WebDAV user1&lt;br /&gt;
$ htdigest .htuser WebDAV user2&lt;br /&gt;
$ htdigest .htuser WebDAV user3&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die User können dann noch Gruppen zugeordnet werden. Dazu eine Textdatei erstellen und die Gruppenmitgliedern durch einen Doppelpunkt getrennt hinter den Gruppennamen schreiben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ nano .htgroup&lt;br /&gt;
rw:user1&lt;br /&gt;
ro:user2 user3&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Konfiguration==&lt;br /&gt;
Jetzt kommt die Konfiguration vom Apache. Dafür wird eine Textdatei webdav.conf in /etc/apache2/conf.d/ angelegt. Der genaue Ort und der Name der Datei ist egal wenn die Datei in die Apache conf eingebunden wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ cd /etc/apache2/conf.d/ &lt;br /&gt;
$ nano webdav.conf&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hier eine Beispielkonfiguration:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
DavLockDB &amp;quot;/var/webauth/webdav/davlockdb/davlockdb&amp;quot;&lt;br /&gt;
Alias /webdav &amp;quot;/var/webdav/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/var/webdav/&amp;quot;&amp;gt;&lt;br /&gt;
    # Verzeichnis /var/webdav/ Online stellen mit den Optionen ... und für alle Sichtbar&lt;br /&gt;
    Options Indexes MultiViews&lt;br /&gt;
    AllowOverride None&lt;br /&gt;
    Order allow,deny&lt;br /&gt;
    allow from all&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Location /webdav&amp;gt;&lt;br /&gt;
    # Dav Modul für /webdav aktivieren&lt;br /&gt;
    Dav On&lt;br /&gt;
    # Zugriff nur via https&lt;br /&gt;
    SSLRequireSSL&lt;br /&gt;
    # Authentifizierung via Digest alternativ kann man auch Basis verwenden&lt;br /&gt;
    AuthType Digest&lt;br /&gt;
    # Name des Authentifizerten Bereiches&lt;br /&gt;
    AuthName WebDAV&lt;br /&gt;
    # Domain und URI des Authentifizerten Bereichs&lt;br /&gt;
    AuthDigestDomain /webdav/ https://www.ccc-mannheim.de/webdav/&lt;br /&gt;
    # User informationen aus einer Datei Beziehen&lt;br /&gt;
    AuthDigestProvider file&lt;br /&gt;
    # Pfad der Datei&lt;br /&gt;
    AuthUserFile &amp;quot;/var/webauth/webdav/.htuser&amp;quot;&lt;br /&gt;
    # Pfad der Gruppeninformationen&lt;br /&gt;
    AuthGroupFile &amp;quot;/var/webauth/webdav/.htgroup&amp;quot;&lt;br /&gt;
    # Alle Methoden außer OPTIONS benötigen einen Gültigen User&lt;br /&gt;
    &amp;lt;LimitExcept OPTIONS&amp;gt;&lt;br /&gt;
        Require valid-user&lt;br /&gt;
    &amp;lt;/LimitExcept&amp;gt;&lt;br /&gt;
    # Für die Methoden ist es Notwendig, das der User Mitglied der Gruppe rm ist.&lt;br /&gt;
    &amp;lt;Limit COPY DELETE LOCK MKCOL MOVE POST PUT UNLOCK&amp;gt;&lt;br /&gt;
        Require group rw&lt;br /&gt;
    &amp;lt;/Limit&amp;gt;&lt;br /&gt;
&amp;lt;/Location&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um die Konfiguration zu übernehmen, Apache die Konfiguration neu einlesen lassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
/etc/init.d/apache2 force-reload&lt;br /&gt;
&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Soweit sollte die Konfiguration Fertig sein. Jetzt sollte man auf den Server mit https://www.ccc-mannheim.de/webdav/ zugreifen können und den Ordnerinhalt sehen können. Mit einem WebDAV fähigen Programm (Windows Exlorer, Mac Finder, ...) kann man jetzt Dateien hochladen.&lt;br /&gt;
&lt;br /&gt;
==Erweiterung==&lt;br /&gt;
Wenn man Unterverzeichnisse für bestimmte Gruppen Freigeben möchte, legt man am besten in der config einen neuen Location Eintrag an und gibt die Änderungen an. Hier Beispielsweise um das Schreiben auf den Unterordner foo nur user2 zu erlauben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;Location &amp;quot;/var/webdav/foo/&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;Limit COPY DELETE LOCK MKCOL MOVE POST PUT UNLOCK&amp;gt;&lt;br /&gt;
        Require user user2&lt;br /&gt;
    &amp;lt;/Limit&amp;gt;&lt;br /&gt;
&amp;lt;/Location&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Zertifkatsbasierte  Autorisierung==&lt;br /&gt;
&lt;br /&gt;
Da es leider kaum Clients gibt, die bei WebDAV mit Zertifikaten umgehen können, empfehle ich momentan des Oben beschriebenen Weg. Wer da was kennt bitte melden.&lt;br /&gt;
&lt;br /&gt;
==Quellen==&lt;br /&gt;
*http://www.schirmacher.de/display/INFO/WebDAV+Server+konfigurieren&lt;br /&gt;
*http://httpd.apache.org/docs/2.0/mod/&lt;/div&gt;</summary>
		<author><name>Scytale</name></author>
	</entry>
</feed>