Hier zeige ich euch, wie ihr bei eurem Seafile Server WebDAV aktivieren könnt.
Als kurze Information. Per WebDAV ist es derzeit nicht möglich (wahrscheinlich auch niemals), dass man auf verschlüsselte Bibliotheken / Verzeichnisse zugreifen kann.
Update
16.10.2020 | Anpassung an Seafile 7.1 + |
17.02.2020 | Erstellung dieser Anleitung. |
Um WebDAV zu aktivieren muss eine Einstellung bei Seafile selbst getätigt werden und eine weitere bei eurem Webserver. In meinem Fall ist das nginx.
Für die Updates mit Seafile 7.1+ habe ich mich an die offizielle Anleitung gehalten.
1. Seafile WebDAV aktivieren
Dazu öffnet ihr die Datei “seafdav.conf” in eurem Seafile Verzeichnis. Wer seinen Seafile Server nach meiner Anleitung erstellt hat, der findet das Verzeichnis hier:
cd /home/seafile/conf/
Nun öffnen wir diese Datei und fügen folgenden Inhalt ein bzw. passen den bestehenden Inhalt an:
nano seafdav.conf Inhalt: [WEBDAV] enabled = true port = 8080 share_name = /seafdav
2. Anpassen der Webserver Konfiguration
In dieser Anleitung gehe ich genauer auf den nginx Webserver ein. Wer einen anderen Webserver nutzt, der kann sich hier die genaue Konfiguration anschauen.
2.1 nginx Konfiguration anpassen
In diesem Schritt müssen wir lediglich noch die nginx Konfiguration anpassen. Wer meiner Anleitung gefolgt ist, findet die Datei hier:
nano /etc/nginx/sites-available/seafile.conf
Zu dieser Konfiguration fügt ihr folgendes hinzu:
location /seafdav { proxy_pass http://127.0.0.1:8080/seafdav; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Destination "http:$nossl_destination"; proxy_read_timeout 1200s; client_max_body_size 0; access_log /var/log/nginx/seafdav.access.log seafileformat; error_log /var/log/nginx/seafdav.error.log; }
Ganz ans Ende der Datei kopiert ihr noch folgendes:
map $http_destination $nossl_destination { "~^https:(.+)$" $1; "~^http:(.+)$" $1; }
Anschließend startet ihr Seafile sowie nginx neu.
service seafile restart service nginx restart
3. Ports freigeben
Nun müsst ihr noch dafür sorgen, dass bei eurer Firewall der Port 8080 freigegeben ist. Wenn ihr keine Firewall habt, so könnt ihr euch diesen Schritt sparen.
4. Testen
Zum Testen geht ihr auf eure Seafile Cloud und gebt zusätzlich noch “/seafdav” an. Beispielsweise könnte der Link so aussehen: https://eurecloud.de/seafdav
Dann solltet ihr folgende Meldung sehen:
Nun habt ihr erfolgreich WebDAV bei Seafile Server aktiviert.
Quelle: https://download.seafile.com/published/seafile-manual/extension/webdav.md
Warum port 8080 auf der Firewall freigeben?
Der Port ist doch nur auf localhost geöffnet.