Unabhängig durch CalDAV und CardDAV

Unabhängig durch CalDAV und CardDAV

2014-07-02

Um unabhängig von Google und Co zu werden habe ich mich entschlossen mir einen CalDAV- und WebDAV-Server einzurichten.

Der wahrscheinlich berühmteste Vertreter ist wohl Owncloud. Beim ersten Installationsversuch ist mir jedoch aufgefallen, dass die aktuelle Version rund 10.000 Dateien und eine stolze Gesamtgröße von 93 MB auf der Festplatte einnimmt. Ich weiß, Owncloud kann noch mehr, aber 65 MB für "apps", 22MB für "core" und 18 MB für "3rd party" ist einfach zu viel, wenn man nur Kalendereinträge synchronisieren will.

Bei meiner weiteren Recherche stieß ich nun darauf, dass Owncloud die Kalendersynchronisation eh nicht selbst erledigt, sondern dafür externe Libraries verwendet, nämlich sabre/dav, welches man sich auch selbst einrichten kann. Dies ist wohl etwas unpraktisch, da die Entwickler ständig betonen die Bibliothek nicht für "Endkunden" zu entwickeln, aber es ist mit wenig Aufwand realisierbar, wenn man sich an das Tutorial [1] hält.

Da ich keine Shell auf meinem Webserver aufrufen kann, verwendete ich die Webinstallation. Wichtig ist, dass das Tutorial davon ausgeht, dass der Inhalt des Zip-Archivs komplett entpackt wird. Der verwirrende Passus wurde nach kurzer Diskussion im Git-Repo ohnehin gestrichen ;-) Am Besten ihr verwendet die Datei "groupwareserver.php" [2] im Example-Ordner und passt sie entsprechend an. An dieser Stelle möchte ich anmerken, dass die Installation in ein Subverzeichnis nicht funktioniert hat (neue Subdomain anlegen, dann klappts sofort). Der Webserver schien einfach endlos die Seite zu laden, wenn sich das Projekt in einem Unterordner befand (trotz korrekt gesetzten Verzeichnissen in den PHP-Dateien).

Im "examples"-Ordner finden sich noch SQL-Skripts für die jeweiligen Datenbanken die auszuführen sind. Wenn ihr das Passwort des Users ändern wollt (wollt ihr!), müsst ihr den MD5 von username:SabreDAV:password verwenden, in MYSQL z.B. mit MD5('admin:SabreDAV:mysecret'). Na, immerhin wird ein Salt verwendet... (MD5 sollte man nicht mehr verwenden).

Am PC verwende ich zur Synchronisation Icedove (=Thunderbird) mit einem Iceowl-Plugin (Lightening in Thunderbird), welches in Debian über apt-get installiert werden kann :-) Für die Kontakte verwende ich den "Inverse SOGo Connector", ein DAV-Plugin für Addressbücher. Ich muss euch davon abraten die Google Kontakte direkt zu synchronisieren und zu verschieben, da dies sehr schlecht funktioniert. Ich weiß nicht, welches Plugin schuld ist, aber es verschwinden dabei die meisten Kontakte und viele Informationen. Manche Daten werden sogar zwischen Kontakten vermischt. Achtung auch beim SOGo Connector, man sollte das Adressbuch später nochmal löschen und neu importieren, damit man sieht, was wirklich am Server liegt. Vor allem beim Verschieben von Kontakten gibt es da große Probleme. Am Besten die Kontakte gleich händisch übertragen ;-)

Am Handy verwende ich DAVDroid zur Synchronisation von Kalender und Kontakten, was ich aber nicht von Google Play, sondern von FDroid installiert habe. Funktioniert bis jetzt ohne Probleme :-)