[[Vorlage(Getestet, focal)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] [:Benutzer_und_Gruppen: Benutzer und Gruppen verwalten] }}} [[Inhaltsverzeichnis(2)]] [[Bild(./webdav_logo.jpg, align=left)]] [http://www.webdav.org/ WebDAV] {en} (Web-based Distributed Authoring and Versioning) ist ein offener Standard zur Bereitstellung von Dateien im Internet. Der Benutzer kann durch WebDAV auf seine Daten wie bei einer "Online-Festplatte" zugreifen. Bekannte Dienste sind beispielsweise Apples iDisk oder das GMX Mediacenter. Die Einrichtung eines eigenen WebDAV-Servers mittels dem Webserver [:Apache:] wird unter [:Archiv/Apache/mod_dav:mod_dav] beschrieben. = Verbindung über Dateimanager = [[Vorlage(Fehlerhaft, "Die Beschreibung der GUI der Dateimanager ist veraltet und muss überarbeitet bzw.überprüft werden." ) ]] Die Dateimanager der Desktopumgebungen [:GNOME:], [:KDE:], [:Xfce:] und [:LXDE:] können direkt auf WebDAV-Ressourcen zugreifen. Dazu müssen im Regelfall keine weiteren Pakete installiert werden. == Ubuntu (Nautilus) == [[Bild(./webdav_nautilus.png, 300, right)]] Eine WebDAV-Verbindung wird direkt durch die Eingabe der Adresse in Nautilus hergestellt. Dazu wechselt man über die Seitenleiste in die Ort-Eingabe ("''Andere Orte''"). Dort gibt man unter "''Mit Server vebinden''" dann die Internet-Adresse des WebDAV-Verzeichnisses ein, der Präfix des Internet-Protokolls "''http''" wird dabei durch ''"dav''" ersetzt, ''"https"'' entsprechend durch ''"davs"''. Also beispielsweise: * `davs://webdav.mc.gmx.net/` Bei Ubuntu 22.04.4 funktioniert für GMX (siehe unten, "t-online"): * `davs://kundennummer@webdav.mc.gmx.net/` bzw. `davs://benutzername@webdav.mc.gmx.net/` Es folgt ein Eingabedialog für das Passwort. Gleiches gilt für WEB.DE: `davs://benutzername@webdav.smartdrive.web.de/` Seit Ubuntu 13.04 ist diese Methode zwingend, da ''"Datei -> Mit Server verbinden ..."'' in Nautilus 3.6.3 keinen Eingabedialog mehr bietet. Für das Mediencenter bei T-Online lautet der Pfad zum Beispiel: `davs://account@webdav.mediencenter.t-online.de`. Intern verwenden die Dateimanager Nautilus, Caja und Thunar das [:gio:GVfs]. == Kubuntu (Dolphin/Konqueror) == [[Bild(./webdav_konqueror.png, 300, right)]] Um per WebDAV-Zugriff auf beispielsweise das GMX-Mediacenter zu erhalten, muss nur die folgende Zeile in die Adressleiste des [:Konqueror:] oder [:Dolphin:] eingegeben werden. * `webdavs://webdav.mc.gmx.net/` Für unsicheren Zugriff (bei GMX nicht mehr möglich) ohne https kann * `webdav://example.org/` benutzt werden. Es öffnet sich ein Login-Fenster, in das noch die GMX-E-Mail-Adresse (Kundennummer) und das entsprechende Passwort eingegeben werden müssen. Daraufhin hat man sofort Zugriff auf die dort abgelegten Daten. In [:Dolphin:] kann man dann die aufgerufene Adresse aus der auf editierbar geschalteten Adresszeile auch in die Orte-Seitenleiste ziehen und dort quasi als "Lesezeichen" ablegen. Alternativ kann man die Adresse auch über "Netzwerk" in der Orte-Seitenleiste einrichten. Dazu wählt man "Netzwerkordner hinzufügen" und dort "Web-Ordner (webdav)" aus. Was für einen Namen man vergibt, bleibt einem selbst überlassen, wichtig ist der Benutzer (bei GMX die komplette EMail-Adresse), der Server (im Beispiel GMX ist das ''webdav.mc.gmx.net'', der Ordner / und die Entscheidung, ob verschlüsselt werden soll (webdavs) oder nicht. Hakt man "Verschlüsselung verwenden" an, wird die Portadresse von 80 auf 443 geändert. == Xubuntu (Thunar) == Um via WebDAV ganz bequem auf eigene Dateien zuzugreifen, öffnet man zunächst den Standard-Dateimanager von Xfce: [:Thunar:]. Unter "''Gehe zu -> Ort öffnen...''" gibt man die passende Internet-Adresse für den WebDAV-Zugang an, z.B.: * `dav://example.org/` * `davs://example.org/` Bei der Abfrage von Benutzername und Passwort sollte man die Option "''Passwort erst beim Abmelden vergessen''" oder "''Nie vergessen''" wählen. Dann einfach "''Verbinden''" und schon steht die Verbindung. Intern verwendet Thunar genau wie Nautilus und Caja das [:gio mount:GVfs]. {{{#!vorlage Experten Sollte man während eines Verbindungsversuchs die folgende Fehlermeldung erhalten: {{{ DBus error org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.. \}}} dann kann man den folgenden Befehl ausprobieren: {{{#!vorlage Befehl sudo dpkg-reconfigure thunar \}}} }}} == Lubuntu (PCManFM, bis Lubuntu 18.04) == Um WebDAV mit dem Dateimanager [:PCManFM:] zu nutzen, folgt man der Anleitung für Thunar (siehe oben). Da beide im Hintergrund [:gio_mount:GVfs] verwenden, gibt es nur optische Unterschiede. [[Anker(davfs2)]] = Verbindung per davfs2 = [http://savannah.nongnu.org/projects/davfs2 davfs2] {en}, das WebDAV Linux File System, ist ein Dateisystemtreiber, der es erlaubt, WebDAV-Internet-Ressourcen als lokales Dateisystem zu mounten. Dadurch kann man WebDAV wie einen normalen Datenträger benutzen und mit jeder Anwendung Daten auf dem WebDAV-Laufwerk ablegen. Dazu müssen die Pakete * '''ca-certificates''' * '''davfs2''' (''universe'') installiert sein [1]. Anschließend kann man das Verzeichnis mit Root-Rechten an einem beliebigen Mountpunkt [:mount:einhängen], wobei man selbstverständlich nach dem Benutzernamen und Passwort der WebDAV-Freigabe gefragt wird: {{{#!vorlage Befehl sudo mount -t davfs https://mediacenter.gmx.net /mountpunkt }}} == Einbinden mit Benutzerrechten == Falls ein normaler Benutzer die Freigabe einhängen soll, muss das über die Datei '''/etc/fstab''' erlaubt werden. Dazu wird diese in einem Editor [3] mit Root-Rechten geöffnet und folgende Zeile eingetragen: {{{ # Allgemein http:// davfs user,noauto 0 0 # Allgemein mit verschlüsselter Übertragung https:// davfs user,noauto 0 0 # Beispiel gmx.mediacenter https://mediacenter.gmx.net /home/otto/mnt/gmx davfs noauto,user,rw 0 0 }}} {{{#!vorlage Hinweis Hier sollte unbedingt darauf geachtet werden, dass man die Option "noauto" in Verbindung mit "user" nimmt. Ansonsten wird beim Systemstart versucht das Verzeichnis einzuhängen, was nicht gelingen wird. Im schlimmsten Fall hat dies zur Folge, dass sich das Betriebssystem gar nicht mehr startet. }}} Damit jeder Benutzer WebDAV-Laufwerke einbinden darf, muss das SUID-Bit für den Befehl `mount.davfs` gesetzt werden [2], was man am einfachsten erledigt, indem man folgenden Befehl ausführt und die entsprechende Frage mit ''"Ja"'' beantwortet: {{{#!vorlage Befehl sudo dpkg-reconfigure davfs2 }}} Fragen, unter welchen Gruppen- und Benutzerkennungen der Prozess laufen soll, sollte man einfach so bestätigen, wie es vorgeschlagen wird, nämlich mit ''"davfs2"''. Jeder Benutzer, der das WebDAV-Laufwerk ohne Root-Rechte einbinden darf, muss außerdem der Gruppe `davfs2` angehören [4]. {{{#!vorlage Befehl sudo usermod -aG davfs2 }}} Will man nicht jedes mal beim mounten die Login-Daten neu eingeben, können diese mit beschränkten Leserechten im System hinterlegt werden. Dabei hat man zwei Möglichkeiten. Die erste ist es, die Benutzerdaten global, d.h. für alle Benutzer, im System zu hinterlegen. Dazu bearbeitet [3] man die Datei '''/etc/davfs2/secrets''' mit Root-Rechten: {{{ # Allgemein # # Beispiel /mnt manfred.mustermann@gmx.de "geheimespasswort" # oder https://mediacenter.gmx.net manfred.mustermann@gmx.de "geheimespasswort" }}} Die zweite Möglichkeit ist, die Login-Daten lokal im Homeverzeichnis des Benutzer zu hinterlegen. Die Herangehensweise ist wie bei der ersten Möglichkeit, nur ohne Root-Rechte. Zuerst in der Datei '''~/.davfs2/secrets''' [3]: {{{# Allgemein # # Beispiel /home/otto/mnt/gmx manfred.mustermann@gmx.de "geheimespasswort" }}} die Login-Daten eintragen, dann aber mit {{{#!vorlage Befehl chmod 600 ~/.davfs2/secrets }}} unbedingt die Leserechte der Datei einschränken. Auf Mehrbenutzersystemen sollte die Datei zuerst leer erzeugt und ihre Zugriffsrechte auf 600 umgestellt werden, bevor sie mit den Zugangsdaten befüllt wird. Für die Authentifizierung an Windows-WebDAV-Servern ist unter Umständen ein voll qualifizierter Benutzername (Down-Level Logon Name) nach dem Schema Domain\login erforderlich. In einem solchen Fall müssen in der secrets-Datei Domäne und login durch zwei \ getrennt (z.B. `/home/martin/mnt/webdav domain\\martin geheimwort`) werden. Nun kann das GMX-Mediacenter eingebunden werden. Dazu muss man im Terminal {{{#!vorlage Befehl mount ~/mnt/gmx }}} eingeben. Dabei muss der Einhängepunkt gegebenenfalls vorher angelegt werden {{{#!vorlage Befehl mkdir -p ~/mnt/gmx }}} \\ {{{#!vorlage Hinweis Eine alternative Möglichkeit, per WebDAV bereitgestellte Daten mit Benutzerrechten über das [:gio:GVfs] einzubinden, bietet auch [:gio mount:]. Als vielseitiges graphisches Frontend bietet sich dafür [:Gigolo:] an. }}} == Problembehebung == === Abbruch mit Fehlermeldung „setuid-Bit nicht gesetzt“ === Die Fehlermeldung {{{ /sbin/mount.davfs: die Programmdatei hat das setuid-Bit nicht gesetzt }}} besagt, dass ein normaler Benutzer die WebDAV-Freigabe einhängen wollte, die Programmdatei '''/sbin/mount.davfs''' aber wegen fehlendem SUID-Bit nicht als `root` ausführbar ist. Zur Abhilfe kann man mit [:chmod:] die [:Rechte:] der Programmdatei ändern oder besser das Paket '''davfs2''' erneut installieren und dabei die Frage nach diesem Modus ''„Soll unprilegierten Benutzern erlaubt werden, WebDAV-Ressourcen einzubinden?“'' bejahen. === Abbruch durch unbekannte Option === Hängt man eine WebDAV-Ressource mit Benutzerrechten {{{#!vorlage Befehl mount https://mediacenter.gmx.net }}} ein, so kann es vorkommen, dass dies mit der Fehlermeldung {{{ /sbin/mount.davfs:/home//.davfs2/davfs2.conf:16: unbekannte Option }}} abgebrochen wird. Schuld daran sind die Einträge der Optionen `dav_user` und `dav_group` in der Datei '''~/.davfs2/davfs2.conf'''. Diese Datei wird von Davfs2 bei der ersten Benutzung von '''/etc/davfs2/davfs2.conf''' ins Homeverzeichnis kopiert, aber die beiden Optionen sind leider gar nicht gültig, wenn man das Programm nicht mit Root-Rechten startet. Deshalb sollte man in diesem Falle die Datei mit einem Editor öffnen [3] und die entsprechenden Zeilen auskommentieren: {{{# dav_user davfs2 # system wide config file only #dav_user nobody # dav_group davfs2 # system wide config file only #dav_group staff }}} === ''"slash-"'' in Datei- und Verzeichnisnamen === Werden nach dem mounten der WebDAV-Ressource Datei- und Verzeichnisnamen mit zusätzlich eingefügtem ''"slash-"'' oder ''"-slash-"'' angezeigt, lässt sich dies mit einer Änderung in der Datei '''~/.davfs2/davfs2.conf''' beheben. Diese dazu mit einem Editor öffnen [3] und den Eintrag {{{ # use_displayname 1 }}} durch {{{ use_displayname 0 }}} ersetzen. === Fehler - Home-Verzeichnis des Benutzers kernoops === Falls man folgenden Fehler bekommt: ''"/sbin/mount.davfs: / ist das Home-Verzeichnis des Benutzers kernoops. Du kannst im Home-Verzeichnis eines anderen Benutzers kein Dateisystem einhängen"'' Als Abhilfe muss in der Datei '''/etc/davfs2/davfs2.conf''' die Zeile {{{ ignore_home kernoops }}} eingefügt werden. === davfs will das SSL Zertifikat nicht anerkennen === Wenn die Fehlermeldung "Wir trauen dem Zertifikat nicht" oder das Nachfragen von davfs bei einem nicht-verifiziertem Zertifikat nicht erwünscht ist, muss das Zertifikat manuell importiert werden. Dazu wird es zunächst heruntergeladen: {{{#!vorlage Befehl openssl s_client -connect HOSTNAME.at:443 -showcerts /dev/null | openssl x509 -outform PEM > meinzertifikat.pem }}} Diese Datei wird dann in '''/etc/davfs2/certs''' (systemweit) oder in '''~/.davfs2/certs''' (per Benutzer) abgelegt: {{{#!vorlage Befehl sudo cp meinzertifikat.pem /etc/davfs2/certs/ }}} Um davfs zu sagen, wo das Zertifikat liegt, muss in der '''/etc/davfs2/davfs2.conf''' bzw. '''~/.davfs2/davfs2.conf''' Folgendes hinzugefügt werden: {{{ trust_server_cert /etc/davfs2/certs/meinzertifikat.pem }}} Alternativ reicht auch die folgende Zeile, da die Pfade '''/etc/davfs2/certs/''' und '''~/.davfs2/certs/''' automatisch durchsucht werden: {{{ trust_server_cert meinzertifikat.pem }}} === davfs automatisch betreiben === Manchmal kann es sinnvoll sein, davfs in z.B. einem Skript zu benutzen. Dann möchte man natürlich nach Möglichkeit nicht, dass jedes mal nach dem Benutzernamen und dem Passwort gefragt wird. Dies macht der folgende Befehl: {{{#!vorlage Befehl echo -e "Benutzername\nPasswort"|sudo mount -t davfs }}} Wenn auch ein ungültiges Zertifikat übersprungen werden soll, kann man dies so machen: {{{#!vorlage Befehl echo -e "Benutzername\nPasswort\nj"|sudo mount -t davfs }}} {{{#!vorlage Hinweis In Skripten muss man das `-e` weglasssen. }}} {{{#!vorlage Warnung Wenn man das Passwort und den Benutzernamen in einem Skript abspeichert, so ist das Passwort und der Benutzername für jeden lesbar, der das Skript lesen bzw. ausführen kann. }}} === Abbruch bei WebDAV zu Windows-Server === Hängt man eine WebDAV-Ressource eines Windows-Servers mit mount.davfs über sicheres WebDAV {{{#!vorlage Befehl mount https://webdav.example.org }}} ein, so kann es vorkommen, dass dies mit der Fehlermeldung {{{ p11-kit: couldn't open config file: /root/.pkcs11/pkcs11.conf: Keine Berechtigung /sbin/mount.davfs: das Einhängen schlug fehl; Legitmierung am Server fehlgeschlagen: Challenge NTLM wurde ignoriert, GSSAPI-Legitimierungsfehler: Unspecified GSS failure. Minor code may provide more information: Credentials cache file '/tmp/krb5cc_0' not found }}} abgebrochen wird. Ursache ist, dass mount.davfs standardmäßig GnuTLS verwendet, GnuTLS und WebDAV-Ressource von Windows-Servern aber nicht reibungsfrei zusammenarbeiten. Durch Umstellen von mount.davfs auf OpenSSL kann dieses Problem zumindest umgangen werden. Dazu muss libneon (verwendet OpenSSL) zusätzlich zu libneon-gnutls installiert werden. Danach wird der Link auf libneon-gnutls als Workaround auf libneon umgebogen. Dieses Vorgehen ist zwar nicht optimal, löst jedoch die Anmeldeprobleme bei einer Authentifizierung an Windows-Servern. Der Superuser muss folgende Befehle ausführen um diesen Workaround einzurichten (Version laut Ubuntu 13.10). {{{#!vorlage Befehl sudo apt-get install libneon27 sudo mv /usr/lib/libneon-gnutls.so.27 /usr/lib/libneon-gnutls.so.27.orig sudo ln -s /usr/lib/libneon.so.27 /usr/lib/libneon-gnutls.so.27 }}} Eine bessere und dauerhafte Lösung (Restauration des Links bei Updatets beenden den Workaround) wäre das Umstellen von mount.davfs2 auf OpenSSL bzw. die Erstellung einer OpenSSL-Variante von mount.davfs durch Binden mit libneon anstatt libneon-gnutls. = Liste mit WebDAV-Anbietern = Es gibt eine Reihe von Anbietern, die Zugang zu Webspace zum Teil sogar kostenlos anbieten. Hier sollen Anbieter und die Zugangsdaten gesammelt werden. Verwendet wird durchgängig sicheres WebDAV (HTTPS). {{{#!vorlage Hinweis Die angegebenen URLs dienen nur zum Lesezugriff im Browser. Bei den in der Spalte "Server" genannten Adressen ist beim Einsatz eines Dateimanagers `http://` bzw. `https://` durch * `dav://` bzw. `davs://` (GNOME 3, Xfce, LXQt) * `webdav://` bzw. `webdavs://` (KDE) zu ersetzen. }}} {{{#!vorlage Tabelle <-5 rowclass="titel">Anbieter +++ Anbietername Server Ordner Benutzername +++ GMX Mediacenter `https://webdav.mc.gmx.net` leer lassen Kundennummer bzw. E-Mail-Adresse bei GMX +++ WEB.DE Smartdrive `https://webdav.smartdrive.web.de` leer lassen E-Mail-Adresse bei Web.de +++ [:Archiv/ownCloud_Nutzung#WebDAV:ownCloud] / Nextcloud ^^(5)^^ `https://CLOUD-SERVER-URL/remote.php/dav/files/BENUTZERNAME` / ownCloud bzw. Nextcloud Benutzername +++ [:Seafile:Seafile] `https://Seafile-SERVER-URL/seafdav/` (Library) e-Mail des Seafile Accounts +++ Telekom MagentaCloud `https://magentacloud.de/remote.php/webdav` / E-Mail-Adresse bei T-Online (KDE: Nur Username!) +++ 1&1 SmartDrive (DSL Kunden) `https://sd2dav.1und1.de` / E-Mail-Adresse bei 1&1 +++ 1&1 SmartDrive (Webhosting Kunden) ^^(1)^^ `https://webdav.office.1und1.de/` / E-Mail-Adresse bei 1&1 +++ Domainfactory `FTPUSERNAME.livedisk.df.eu/webdav/` / FTPUSERNAME@web.dav +++ freenet `https://webmail.freenet.de/webdav` / freenet-Nutzerdaten +++ myDisk.se `https://mydisk.se/Benutzername` / freie Eingabe +++ Humyo.com (nicht empfehlenswert, buggy!) `https://dav.humyo.com` / E-Mail-Adresse +++ mydrive.ch `https://webdav.mydrive.ch` / Benutzername +++ Strato Hidrive ^^(2.2)^^ `https://webdav.hidrive.strato.com/` (s. Anleitung) Benutzername +++ UD Media `https:///` / Benutzername +++ Mailbox.org ^^(2.2)^^ `https://dav.mailbox.org` servlet/webdav.infostore/ E-Mailadresse +++ MyKolab.com `https://webdav.mykolab.com` leer lassen USERNAME@mykolab.com +++ blaucloud.de `https://.blaucloud.de/remote.php/webdav/` / oder weiterer ownCloud Benutzername +++ ADrive.com ^^(2.1)^^ `https://www.adrive.com/webDAV.php` leer lassen Benutzername +++ DRACOON ^^(4)^^ `https://dracoon.team/webdav/` leer lassen Benutzername }}} ^^(1)^^ Nutzer der 1&1-Webpakete: Hier muss in der Datei '''/etc/fstab''' hinter der URL immer noch der Port 81 angegeben werden, also z.B. `http://meinwebdav.domain.de:81 /home/user/mnt/1und1 davfs user,noauto 0 0`[[BR]] ^^(2.1)^^ WebDAV nur in der kostenpflichtigen Version verfügbar[[BR]] ^^(2.2)^^ Allgemein Kostenpflichtiges Angebot [[BR]] ^^(4)^^ In der Free Version bis zu 5 User / 10 GB. [[BR]] ^^(5)^^ Selbstverwaltet auf eigenem Server. Siehe auch die [https://docs.nextcloud.com/server/latest/user_manual/de/files/access_webdav.html Anleitung] {de}. ## https://uisapp2.iu.edu/confluence-prd/display/SOICKB/Using+Box+under+Linux = Links = * [http://webdav.org/ Alles über WebDAV] {en} * [wikipedia:Webdav:] * [:gio mount:] – auch GIO/GVfs unterstützt WebDAV * [:gio:] – weitere Informationen zum GVfs # tag: Netzwerk, Internet