CalDAV & CardDAV unter macOS 10.15 mit kdav

Ich wollte gerne die in macOS integrierte Kontakte, Kalender und Mail App verwenden. Kopano bringt aktuell keine Lösung out of the Box für CardDav. Es gibt aber ein Tool (kdav), welches noch nicht integriert wurde. Auf meinem UCS Server habe ich es wie folgt eingerichtet:

Kopano Version 8.7.1.0-0+9.1
UCS Version 4.4-6 errata780

Fehlende Pakete installieren

apt install git php-sqlite3 php-dom

kdav instalieren

  • Ordner erstellen
  • Software herunterladen
  • Composer installieren
  • Pakete aktualisieren
mkdir /usr/share/kdav
cd /usr/share/kdav
git clone https://github.com/Kopano-dev/kdav .
wget https://getcomposer.org/composer-stable.phar
mv composer-stable.phar composer.phar
chmod +x composer.phar
./composer.phar update

Für dei SQLite Datenbank und die Logs

mkdir /var/lib/kopano/kdav
chown www-data:www-data /var/lib/kopano/kdav
mkdir /var/log/kdav
chown www-data:www-data /var/log/kdav

Logrotate einrichten indem folgende Datei erstellt wird

nano /etc/logrotate.d/kdav

/var/log/kdav/*.log {
    size 1k
    create www-data www-data
    compress
    rotate 4
}

Webserver Konfiguration

nano /etc/apache2/conf-available/kdav.conf

# kdav
<IfModule mod_alias.c>
    Alias /kdav /usr/share/kdav/server.php
</IfModule>

<Directory /usr/share/kdav>
    DirectoryIndex server.php
    Options -Indexes -FollowSymLinks

    AllowOverride none
    <IfModule !mod_authz_core.c>
        Order allow,deny
        allow from all
    </IfModule>
    <IfModule mod_authz_core.c>
        Require all granted
    </IfModule>

    # Output buffering needs to be off, to prevent high memory usage
    php_flag output_buffering off

    # This is also to prevent high memory usage
    php_flag always_populate_raw_post_data off

    # SabreDAV is not compatible with mbstring function overloading
    php_flag mbstring.func_overload off

    # set higher limits by default
    php_value memory_limit 256M
    php_value max_execution_time 259200
</Directory>

Konfiguration übernehmen

a2enconf kdav
systemctl reload apache2

Nun ist kdav unter https://ucsserver/kdav erreichbar.

Unter MacOS dann in der entsprechenden App Account hinzufügen und CardDav bzw. CalDav wählen:

Accounttyp: Erweitert
Benutzername: meinbenutzer
Passwort: meingeheimnis
Serveradresse: ucsserver
Serverpfad: /kdav/principals/meinbenutzer
Port: 443
Haken bei SSL verwenden

Das Zertifikat muss gültig sein bzw. als vertrauenswürdig im Schlüsselbund hinterlegt sein.

1 Like

calDAV Configuration illustrated cardDAV Configuration illustrated

1 Like

EN: 1) This works seamless indeed.
DE: 1) Diese Anleitung funktioniert in der Tat tadellos.

EN: 2) For your convenience: Above I have created the corresponding macOS illustrations (macOS 10.14.6 Mojave).
DE: 2) Kleiner Beitrag meinerseits: Illustrationen für die macOS Konfiguration (macOS 10.14.6 Mojave)

EN: 3) Works too for macOS 10.15 and 11.1 (tested)
DE: 3) Funktioniert auch für macOS 10.15 and 11.1 (getestet)

Kopano Core Version = 8.7.1.0-1
Univention UCS Version = 4.4-7 errata850
VM = running with VMware Fusion Version 11.5.7

Link to the Kopano-Univention VM:


Univention-App-kopano-core-vmware

@BJ48945 - vielen, vielen Dank für die super Beschreibung! Damit hab ich endlich Zugriff von meinem Samsung S9 mit /e/ Betriebssystem und hab meinen Kalender, Kontakte und Aufgaben!!! (Leider bieten die aktuell keine Möglichkeit für ActiveSyn bzw. Z-Push Konten an)
Jetzt muss ich nur schauen, wie ich an meine Mails komme…

Schöne Zeit!

Hallo,
ich wollte meine fritz.box mit meinen Telefonbuch abgleichen. Dafür habe ich kdav nach dieser Anleitung installiert. Dief.box meldet sync erfolgreich aber es sind keine Daten da.
Beim Aufruf von https://ucsserver/kdav in Firefox kommt folgende Meldung:
grafik
Jemand eine Idee was da nicht stimmt?

Thomas

@thhoe Mit der Fritz!Box habe ich das selbst noch nicht getestet. Habe auch leider keine um mir das im Detail anzuschauen. Aber vielleicht kann ich trotzdem einen Tipp geben. Also der Aufruf über den Browser selbst funktioniert so nicht. Allerdings kann in der config.php von kdav der DEVELOPER_MODE auf true gesetzt werden. Damit sind auch Anfragen über den Browser möglich und es erden mögliche Aufrufe angezeigt. Diesen können Sie dann ggf. den korrekten Link entnehmen um die Integration in die Fritz!Box zu übernehmen. Vielleicht posten Sie euch einmal ein Screenshot von den Einstellungen, die Sie in der Fritz!Box vorgenommen haben.

Hallo

Mit https:///kdav/addressbooks//Kontakte/ bekomme ich im Browser die *.vcf Files meiner Kontakte plus ein paar weiterer Daten. Serverseitig scheint das zu funktionieren. Die fritz.box bekommt die Daten aber weiterhin nicht.

Thomas

wie gesagt kenne ich die Funktion der Fritz!Box nicht. Ein Screenshot wäre hilfreich. Ich habe mal in der AVM Doku geschaut und dort steht bei “Kontakte im CardDAV-Format als Telefonbuch einrichten”, dass nur Verbindungen über https möglich sind. Nun rate ich mal und tippe vielleicht auf ein Problem mit der https Verbindung. Ggf. möchte die Fritz!Box nur ein gültiges Zertifikat und verweigert daher die Verbindung? Steht denn nichts in den Logs der Fritz!Box? Da steht ja eigentlich immer etwas drin was die einzelnen Funktionen betrifft.

Ansonsten mal in den Apache Logs schauen was da für Anfragen von der Fritz!Box eingehen.

Hallo,

Das habe ich mir auch schon gedacht. Aber es gibt keine Hinweise darauf in der Fritzbox.

Habe bisher nur nach dem kdav.log geschaut.

172.16.99.1 - hoth [27/Jan/2021:08:40:21 +0100] "PROPFIND /kdav/addressbooks/hoth/Kontakte/ HTTP/1.1" 207 4472 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:22 +0100] "PROPFIND /kdav/principals/hoth/ HTTP/1.1" 207 4465 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:22 +0100] "PROPFIND /kdav/addressbooks/hoth/ HTTP/1.1" 207 5071 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:23 +0100] "PROPFIND /kdav/addressbooks/hoth/Kontakte/ HTTP/1.1" 207 33327 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:23 +0100] "REPORT /kdav/addressbooks/hoth/Kontakte/ HTTP/1.1" 500 4134 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:24 +0100] "REPORT /kdav/addressbooks/hoth/Kontakte/ HTTP/1.1" 500 4135 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:24 +0100] "REPORT /kdav/addressbooks/hoth/Kontakte/ HTTP/1.1" 500 4134 "-" "FRITZOS_CardDAV_Client/1.0"
172.16.99.1 - hoth [27/Jan/2021:08:40:25 +0100] "REPORT /kdav/addressbooks/hoth/Kontakte/ HTTP/1.1" 500 4135 "-" "FRITZOS_CardDAV_Client/1.0"

Wenn ich das richtig lese kommt Fehler 500, das hilft auch nicht weiter.

Das Ganze ist “nice to have”, und im Moment fehlt mir die Zeit mich intensiv darum zu kümmern.
Vielleicht werde ich AVM einmal dazu befragen.

Nochmal vielen Dank

Thomas

Fehler 500 bitte in der error.log nachschauen ob da noch was spannendes steht.

Mastodon