Apache/WebDAV-Anleitung
aus openSUSE, der freien Wissensdatenbank
< Apache
Diese README beschreibt, wie man einen WebDAV-Server aufsetzt, der Digest-Authentifizierung nutzt.
Das folgene Skript soll sowohl als einführendes Beispiel dafür dienen, wie es gemacht wird, als auch als Kopieren-und-Einfügen-Vorlage für Sie. Sie können die Einzelteile Schritt für Schritt kopieren und sie ihren Bedürfnissen anpassen, während Sie es lesen.
# aktivieren Sie die benötigten Apache-Module:
/usr/sbin/a2enmod dav
/usr/sbin/a2enmod dav_fs
/usr/sbin/a2enmod auth_digest
# Definieren Sie das Verzeichnis, auf das Sie zugreifen wollen:
davdir="bearbeitemich"
# Definieren Sie einen Ort, an dem die Beglaubigungen (credentials) gespeichert werden:
acldir=ACL
auth_realm=$davdir
cd /srv/www
# Erstellen Sie ein Verzeichnis für den WebDAV-Zugriff:
mkdir $davdir
chmod 770 $davdir
chown root:www $davdir
# Erstellen Sie ein Verzeichnis für die Beglaubigungen:
mkdir $acldir
chmod 750 $acldir
chown root:www $acldir
# Erstellen Sie die Beglaubigungsdatei:
touch $acldir/$davdir
chown root:www $acldir/$davdir
chmod 640 $acldir/$davdir
# Richten Sie ein Benutzerkonto ein:
htdigest2 $acldir/$davdir $auth_realm ${user:-user1}
cat <<EOF
#
# Fügen Sie dies in /etc/apache2/conf.d/$davdir.conf ein:
#
EOF
cat <<EOF
# Diese Direktiver wird immer benötigt, wenn Sie WebDAV nutzen.
# Siehe auch http://httpd.apache.org/docs-2.2/mod/mod_dav_fs.html#davlockdb
<IfModule mod_dav_fs.c>
DavLockDB /var/lib/apache2/DAVLock
</IfModule>
<IfModule mod_dav.c>
<IfModule mod_dav_fs.c>
Alias /$davdir /srv/www/$davdir
<Location /$davdir>
DAV On
#ForceType text/plain
Order Deny,Allow
Deny from all
AuthType Digest
AuthName "private area"
AuthDigestFile /srv/www/ACL/$davdir
AuthDigestDomain /$davdir/
AuthName $auth_realm
Require valid-user
Satisfy Any
</Location>
</IfModule>
</IfModule>
EOF
- Wenn Sie eine Fehlermeldung erhalten:-
- Ungültiges Kommando 'AuthDigestFile', vielleicht vertippt oder von einem Modul definiert, das nicht in der Serverkonfiguration enthalten ist.
- Wenn rcapache2 start|restart ausgeführt wird, ersetzen Sie es durch:-
- AuthUserFile /srv/www/ACL/$davdir

