WebDav Server - eigene minimal Cloud

  • Meine Experimente in Bezug auf Cloudspeicher und dem Raspberry sind eigentlich schon zufriedenstellend mit Seafile realisiert.

    Dennoch habe ich mich mal daran gegeben, eine "eigene" schmale WebDav Lösung für den Raspberry zu realisieren.
    Über entsprechende IOS App’s wie „Documents“ oder „GoodReader“ kann der Zugriff auf die „Cloud“ bestens hergestellt werden. Es wird sicherlich entsprechende Android Apps geben.
    Der Sync mit dem Desktop-Rechner findet über entsprechende kostenlose Sync Software statt.

    Die Performance ist super. Ich überlege ernsthaft von Seafile auf diese Lösung umzusteigen.
    Bei gleichzeitigem Zugriff von 5 Geräten liefert mir htop lediglich eine CPU-Auslastung von 38%
    Da ist OwnCloud schon längst am Anschlag, Seafile allerdings auch ;)

    Nachteil der Lösung.
    Kein Schnickschnack vorhanden.
    Ihr könnt Daten syncen, kopieren, bewegen und löschen.
    Mehr nicht.


    Ich habe mir im Netz alle möglichen Anleitungen zum Thema angeschaut.
    Was ich davon genutzt habe findet Ihr nachfolgend.

    Benötigt wird:

    • Apache als Webserver
    • WebDav Module für Apache
    • Für den Zugang von außen NOIP2 (Wenn keine statische IP Adresse vorhanden ist)
    • Ein externes Speichermedium (Festplatte oder USB Stick)
    • Entsprechende Apps für IOS und Android
    • Sync Software für Desktop Rechner


    Die Quellen:

    (Alternativen für Android bitte nachreichen, da kenne ich mich nicht aus.)


    Die Installation


    Zu erst müsst Ihr, wenn nicht schon geschehen, den Apache Webserver installieren.
    Wie das geht, erfahrt Ihr hier im Forum, in diesem Tutorial


    Als nächstes müsst Ihr die WebDav Module aktivieren


    Code
    sudo a2enmod dav_fs
    sudo a2enmod dav
    sudo /etc/init.d/apache2 force-reload

    Datenverzeichnis (möglichst auf externem Speicher) anlegen.
    In meinem Fall eine USB Festplatte die im Verzeichnis "/media" eingehängt ist.


    Code
    sudo mkdir -p /media/USB-SPEICHER/Cloud/
    sudo mkdir -p /media/USB-SPEICHER/Cloud/Daten

    Ihr könnt natürlich Eure eigenen Strukturen und Verzeichnisnamen anlegen.
    Diese müsst Ihr dann natürlich im Verlauf dieses Tutorials entsprechend ändern. ;)

    Jetzt noch den richtigen "Eigentümer" anlegen


    Code
    sudo chown -R www-data /media/USB-SPEICHER/Cloud/



    Virtuellen Host in Apache anlegen.

    Aus Sicherheitsgründen kopiert Ihr erst einmal die original Konfiguration mit


    Code
    sudo mv /etc/apache2/sites-available/default /etc/apache2/sites-available/default_org


    Dann könnt Ihr die Datei editieren

    Code
    sudo nano /etc/apache2/sites-available/default


    Ihr könnt den vorhandenen Inhalt der „default“ Datei löschen und durch nachfolgenden Code ersetzen:



    Jetzt muss der Apache Webserver neu gestartet werden mit


    Code
    sudo /etc/init.d/apache2 reload



    Passwortschutz für WebDav Verzeichnis


    Code
    sudo htpasswd -c /media/USB-SPEICHER/Cloud/passwd.dav Gewünschter_Username


    Jetzt müsst Ihr Euer Wunschpasswort eingeben und nochmals bestätigen.

    Entsprechende Rechte für Passwortdatei vergeben:

    Code
    chown root:www-data /media/USB-SPEICHER/Cloud/passwd.dav
    chmod 640 /media/USB-SPEICHER/Cloud/passwd.dav

    Jetzt müssen wir noch einmal die Apache Konfiguration ändern mit


    Code
    sudo nano /etc/apache2/sites-available/default


    Fügt bitte folgenden Text zwischen </Directory> und </VirtualHost> am Ende der Datei.


    Apache Configuration
    Alias /webdav /media/USB-SPEICHER/Cloud/Daten 
    
    
            <Location /webdav> 
               DAV On 
               AuthType Basic 
               AuthName "webdav" 
               AuthUserFile /media/USB-SPEICHER/Cloud/passwd.dav 
               Require valid-user 
           </Location>

    Die „default“ Datei muss insgesamt so aussehen:


    Jetzt noch mal den Webserver neu starten mit:


    Code
    sudo /etc/init.d/apache2 reload


    Fertig


    Jetzt müsst Ihr lediglich Eure Clients mit dem WebDav Server verbinden.

    In MacOS reicht ein schlichtes cmd & K
    Serveradresse: http://ip-Adresse_Raspberry/webdav/
    Username und Passwort eintragen die Ihr weiter oben vergeben habt.
    Fertig.

    In Windows müsst Ihr so vorgehen:
    http://www.howtoforge.com/setting-up-web…-debian-etch-p2

    In anderen Clients wie „Documents“ geht Ihr entsprechend vor.


    Auf meinem Mac habe ich ein lokales Datenverzeichnis mit dem WebDav Server synchronisiert.
    Ich nutze „GoodSync“ für diese Aufgabe.
    „Goodsync“ läuft auch auf Windows PC’s


    So ich hoffe ich habe nichts vergessen ;)
    Wenn doch einfach Bescheid geben.


    Viel Spaß
    Blaster

    2 Mal editiert, zuletzt von hyle (17. Oktober 2020 um 19:15) aus folgendem Grund: Textformatierung der alten Forensoftware entfernt

  • Kann jemand verifizieren, dass obriges Tutorial funktioniert?
    Habe es jetzt 2x auf einem frischen Pi ausprobiert, beides mal kann ich mich nicht mit dem Webdav verbinden...

  • Hallo und erst einmal vielen Dank für dieses tolle Tutorial!

    Ich habe folgendes Problem:
    wenn ich mich per Windows 8 verbinden will, bekomme ich die Fehlermeldung, die Zugangsdaten seien falsch.

    Ich würde gerne, um zu sehen, ob die Meldung gerechtfertigt ist, die Zugangsdaten zum WebDav ändern. Könnte mir jemand verraten, wie das geht?

  • Habe mich gerade durch dieses Tutorial gearbeitet. Hat mir sehr geholfen, um mich durch die anfänglichen Schwierigkeiten durchzuarbeiten. Mittlerweile läuft mein Webdav sogar über SSL:bravo2:

    Einmal editiert, zuletzt von Monotom (11. Februar 2015 um 21:54)

  • Hi,

    hab mir gerade das Tuturorial durchgelesen.

    Mich Interessiert das WebDav Thema.
    Ich würde gerne den WebDav Server verwenden um solche dinge wie den Outlook Kalender veröffentlichen zu können.

    Weisst du ob ich dafür alle Tools brauche oder reicht nur ein Teil davon ?


    Gruß

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!