WebDAV

Aus Arktur
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Übersicht

WebDAV dient dazu, Freigaben auf Arktur auf sicherem und einfachem Wege zu Hause zu nutzen. So ist es möglich, eine Freigabe wie "/home/tmp" auf Arktur in der Netzwerkumgebung des heimischen Rechners einzubinden. Dateien können zu Hause auf den Server oder von Arktur auf den heimischen Rechner kopiert / verschoben werden, als wenn sie auf einer lokalen Festplatte lägen.

Noch einfacher wird das Arbeiten z.B. mit "T:\" auf Arktur, wenn man Software nutzt, die diese Freigabe zu Hause als Laufwerk einbindet. So kann die Freigabe, die in Schulen "T:\" lautet, zu Hause ebenfalls unter "T:\" genutzt werden. Windows kann dies mit Bordmitteln übrigens vermutlich nicht.

Arktur verschlüsselt diese WebDAV-Verbindungen nach außen über "https", intern wird nach Verbindungsaufbau die Kennung und das übliche Passwort eines Nutzers abgefragt.


Server


Konfiguration

Unter Apache 2.x ist die Konfiguration recht einfach;

  • "/etc/httpd/extra/httpd-dav.conf" ist passend zu bearbeiten (ab Arktur 5.2.02 vor-eingestellt)
  • diese Datei ist von "/etc/httpd/httpd.conf" zu "includen"
  • "https" (Port 443) sollte freigegeben sein


Zertifikate

Apache-2-Konfigurationsverzeichnisse:

  • In "/etc/httpd/extra/httpd-ssl.conf" wird über die Direktiven "SSLCertificateFile" und "SSLCertificateKeyFile" bekannt geben, wo sich Schlüssel und Zertifikat befinden (etc/httpd/...)
  • /etc/httpd: der private Schlüssel "server.key" gehört in das Verzeichnis ssl.key, das Zertifikat "server.crt" ins Verzeichnis ssl.crt.
  • Verlinkung ist möglich
cd /etc/httpd
openssl genrsa -out server.key 1024
openssl req -new -key server.key -out server.csr

ohne die Option "-des3", sonst würde jedesmal das Passwort abgefragt; darum darf nur root die Key-Datei lesen.

Alternativ klappte bei mir

cd /etc/ssl
openssl req -config openssl.cnf -new -nodes -keyout domainname.key -out domainname.csr

erstellte beide Dateien in einem Rutsch, sie liegen dann in "/etc/ssl".

Es muss der CN-Name (common name, domainname hostname o.ä.) angegeben werden, der hinterher auch für die URL verwendet wird, also etwa "mein-arktur.dyndns.org", wenn WebDAV von draußen über https://mein-arktur.dyndns.org erreicht werden soll.

Problem vorher: es musste eine aktuelle "/etc/ssl/openssl.cnf" eingerichtet sein, sonst kommt die Fehlermeldung "unable to load config... openssl.cnf"

openssl x509 -req -days 1825 -in server.csr -signkey server.key -out server.crt

bestätigt den Schlüssel und legt ihn, gültig für 5 Jahre, in "server.crt" ab

Problem: in der "httpd-ssl.conf" muss der Name eingetragen sein, der hinterher auch für die URL verwendet wird, also etwa "ServerName mein-arktur.dyndns.org:443", wenn WebDAV von draußen über https://mein-arktur.dyndns.org erreicht werden soll


Client (Windows)

Es sieht so aus, als ob erst ab Windows XP WebDAV-Freigaben ("Web folders") komfortabel eingebunden werden können; bei Windows 2000 hakt der Versuch an etlichen Stellen.


  • Registry

Vermutlich muss die Registry gepatcht werden

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters

Einen dWord-Eintrag "BasicAuthLevel" mit dem Wert "2" erzeugen; PC-Neustart

0 - Basic authentication disabled
1 - Basic authentication enabled for SSL shares only
2 or greater - Basic authentication enabled for SSL shares and for non-SSL shares
  • Protokoll

Vermutlich muss unter Windows "https" verwendet werden.

  • Dienste: Kontrollieren, ob der Dienst "Webclient" läuft:
    • Start, "services.msc" tippen + Enter
    • unter "webclient" kontrollieren
  • Rechte
    • Es könnte sein, dass der Client erwartet, mit Administrator-Rechten zu laufen

Windows XP

Laufwerksbuchstaben für eine WebDAV-Freigabe: geht nicht mit Bordmitteln von XP; die Freigabe lässt sich ohne Buchstaben in der Netzwerkumgebung einbinden; mit Programmen anderer Anbieter (z.B. [netdrive] von Novell) können auch Laufwerksbuchstaben eingerichtet werden.

Windows 7

Derzeit (April 2010) ist es nicht klar, ob Laufwerksbuchstaben für eine WebDAV-Freigabe in Windows 7 funktionieren; die Freigabe lässt sich jedenfalls ohne Buchstabe in der Netzwerkumgebung einbinden – dann vorher Registry patchen (s.o.).

Mit Programmen anderer Anbieter (z.B. [netdrive] von Novell) können auch Laufwerksbuchstaben eingerichtet werden; vermutlich jedoch nur in der 32-Bit-Version.

Probleme gibt es derzeit (4/2010) immer wieder durch die 64-Bit-Version. Versuchen kann man das Einbinden einer Freigabe auf Arktur folgendermaßen:

  • Kontrollieren, dass der Dienst "WebClient" gestartet bzw. auf "Starttyp: Automatisch" eingestellt ist.
  • Den "Windows Explorer" öffnen, "Computer" anklicken, dann "Netzlaufwerk verbinden"
  • \\mein-arktur.dyndns.org\Pfad\zu\Freigabe\ (Der letzte Backslash könnte sehr wichtig sein!)
  • Geduld - es dauert am Anfang alles etwas länger als unter XP
  • Kennung und Passwort eingeben
  • Ist die Verbindung sehr langsam, den "Internet Explorer" öffnen; dort "/Extras / Internet-Optionen / Verbindungen / LAN-Einstellungen / Automatische Suche der Einstellungen" deaktivieren

Es ist nicht ausgeschlossen, dass unter Windows 7 ein "net use" Befehl funktioniert und eine WebDAV-Freigabe unter einem Laufwerksbuchstaben in Windows einbindet - aber leider auch nicht gesichert. Versuch macht kluch:

net use t: \\mein-arktur.dyndns.org\Pfad\zu\Freigabe\
net use s: http://mein-arktur.dyndns.org/Pfad/zu/Freigabe

oder per SSL

net use t: \\mein-arktur.dyndns.org@SSL\Pfad\zu\Freigabe\
net use s: https://mein-arktur.dyndns.org/Pfad/zu/Freigabe

Oder als Batch-Datei:

@echo off
start /w net use * /del /yes
net use t: \\mein-arktur.dyndns.org\Pfad\zu\Freigabe\ /user:NutzerName /persistent:no
net use k: \\mein-arktur.dyndns.org\Pfad\zu\Freigabe\Klasse\
pause
start %SystemRoot%\explorer.exe /e,,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
exit

netdrive

ergibt

Netdrive-Config.png

und in der Netzwerkumgebung

Netdrive-Explorer.png

BSCW

Bei der Konfiguration des URL muss nach "bscw.cgi" auch noch die BSCW-ID des Users (hier: der User "schan" hat die ID 373) angegeben werden.

Client (Linux)

Kommandozeile

mount.davfs https://hws-bs.dyndns.org/HWS-DAV /home/heiner/WebDAV 

Ubuntu

WebDAV-Verbindung gelingt via Datei-Browser Nautilus mit "Datei / Mit Server verbinden"

OpenOffice konnte direkt speichern / öffnen / erneut speichern, wenn als Speicherort

dav://koesterh@hws-bs.dyndns.org/HWS-DAV

angegeben wurde

OpenSuSE

Es müssen mehrere Software-Pakete installiert sein: wdfs, neon, libneon, evtl. cadaver

Gemountet wird dann mit:

wdfs https://server/Freigabe -o username=Name,password=yyyyyy,accept_sslcert webdav

Konqueror

  • anstelle von http:// webdav:// in der URL voranstellen
  • anstelle von https:// webdavs:// in der URL voranstellen

Client (Mac)

  • über "Finder / Gehe zu / Mit Server verbinden" die WebDAV-Freigabe einbinden
 https://mein-arktur.dyndns.org/Pfad/zur/Freigabe/ 
  • der Mac bemängelt das Zertifikat, dieses lässt sich dauerhaft akzeptieren
  • Abfrage der Kennung und des PW für den Server

Das war's.

Ein doc-Datei auf dem Server ließ sich mit Doppelklick innerhalb von Word für Mac öffnen, ändern und auf dem Server speichern. Easy, Mac-like.

Anleitung für den Mac

Weblinks