Sicherheit bei WebDAV
Zum jetzigen Zeitpunkt ist die WebDAV-Konfiguration einsatzbereit und funktionsfähig. Allerdings wurde noch nichts für die Sicherheit getan. Dafür gibt es zwei relevante Bereiche: Der Zugriff auf die Daten im WebDAV-Verzeichnis und die Verbindung zwischen Client und WebDAV-Verzeichnis.Das HTTP-Protokoll übermittelt standardmäßig die Informationen im Klartext. Das bedeutet, dass ein böswilliger Nutzer die Daten jederzeit abgreifen und einsehen kann. Wenn man zu 100 Prozent auf die Sicherheit achten will, sollten die Daten zwischen Client und WebDAV beim Übertragen verschlüsselt werden.
Zugriffsschutz für die WebDAV-Daten
Es gibt im Web-Bereich zwei verschiedene Authentifizierungs-Verfahren. Das sog. "Digest"-Vefahren funktioniert zwar zuverlässig ist aber aktuell noch experimentell. Außerdem kommen viele WebDAV-Clients nicht damit zurecht.Als Alternative bleibt noch die bekannte "Basic"-Authentifizierung, die bereits mit der HTTP-Version 1.0 definiert wurde. Das folgende Bild zeigt das Fenster, was erscheint, wenn dieses Verfahren aktiviert wurde.
Darstellung: Fenster der Basic-Authentifizierung
In der httpd.conf-Datei müssen in der WebDAV-Sektion folgende Einträge gemacht werden:
AuthType Basic
Damit wird die "Basic"-Authentifizierung für das WebDAV-Verzeichnis aktiviert.AuthName "WebDav-Laufwerk"
Mit dieser Zeile wird die Bezeichnung für das Authentifizierungsfenster festgelegt.AuthUserFile D:/Webdav/.htusers
Dieser Eintrag ist wichtig, damit die Angaben im Authentifizierungsfenster überprüft werden können. Die einzelnen Einträge in dieser Datei haben das gleiche Schema: Username:Passwort. Dabei muss beachtet werden, dass bei Windows das Passwort im Klartext eingetragen werden muss und bei Linux in der verschlüsselten Variante (siehe Apache-Einführung hier bei HTMLWorld). Grundsätzlich können die Dateien in einem einfachen Texteditor angelegt werden. Speziell bei Windows muss beachtet werden, dass die Datei keine weitere Endung haben darf, so dass sie evtl. noch umbenannt werden muss. Allgemein gilt bei der .htusers-Datei, dass immer der absolute Pfad mit angegeben werden muss. Sonst wird zwar das Authentifizierungsfenster angezeigt, jedoch würde ein Login nie funktionieren.Hinweis: Bei jeder Apache-Version wird das Programm htpasswd mitgeliefert, mit dem man über die Kommandozeile die .htusers-Datei "füttern" kann. Bei der Windows-Version vom Apache ist das Programm im Ordner "bin" im Server-Verzeichnis hinterlegt. Mit dem Befehl "htpasswd -h" kann man sich alle möglichen Optionen anzeigen lassen.
Require valid-user
Mit diesem Eintrag wird festgelegt, dass nur die definierten User auf das WebDAV-Laufwerk zugreifen können. Eine gleichwertige Alternative zu dieser Zeile ist der Eintrag "Require user test1 test2", in dem alle User einzeln aufgelistet sind.Es gibt zusätzlich die Möglichkeit, einzelne User in Gruppen aufzuteilen. Für die einzelnen Gruppen kann es organisatorische aber auch technische Ansätze geben. Zum Beispiel kann man Nutzer, die aus einer bestimmten Abteilung in der Firma kommen, zusammenfassen oder User, die mit bestimmten Rechten auf das WebDAV-Laufwerk zugreifen dürfen.
Wenn man diese Variante nutzen möchte muss im WebDAV-Verzeichnis die Datei .htgroups angelegt werden. Die Einträge werden nach folgenden Prinzip angelegt:
Gruppenname: user1 user2 user3 ...
Der folgende Ausschnitt aus der httpd.conf-Datei zeigt, welche Änderungen bzw. Ergänzungen notwendig sind, damit die einzelnen Nutzer anhand der Gruppenzugehörigkeit ermittelt werden können:
AuthType Basic
AuthName "WebDav-Laufwerk"
AuthUserFile D:/Webdav/.htusers
AuthGroupFile D:/Webdav/.htgroups
#Require user test1
Require group testgruppe
Zusätzlicher Schutz per SSL
Sofern private oder sicherheitsrelevante Dateien übertragen werden sollen empfiehlt sich als zusätzlicher Schutz die Verwendung von SSL. Aktivieren Sie hierzu zunächst SSL bei Ihrem Apache Webserver. Anschließend muss in der dazugehörigen<directory>
-Sektion noch der folgende Eintrag gemacht werden:
SSLRequireSSL
Jetzt erscheint bei der Eingabe von "http://pfad/zu/webdav/laufwerk" eine Fehlerseite mit dem HTTP-Code 403 (You don't have permission). Es muss zwingend "https://pfad/zu/webdav/laufwerk" eingegeben werden.
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Über uns
Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project