Radicale ist ein in Python geschriebener eigenständiger Server für CardDAV und CalDAV.
apt install radicale apache2-utils python3-bcrypt python3-passlib
Standardmäßig lauscht der Server nur auf der Loopback
Schnittstelle localhost:5232
ohne
Authentifizierung. Da wir Kontakte über das Internet
synchroniseren wollen, lassen wir den Server auf allen
Schnittstellen lauschen und aktivieren sowohl
Verschlüsselung als auch Authentifizierung.
/etc/radicale/config[server] hosts = 0.0.0.0:5232 ssl = true key = /etc/radicale/key.pem certificate = /etc/radicale/cert.pem [auth] type = htpasswd htpasswd_filename = /etc/radicale/users htpasswd_encryption = bcrypt
Damit der Server immer über aktuelle Zertifikate verfügt, automatisieren wir deren Auslieferung durch ein Skript:
/etc/letsencrypt/renew-hooks/deploy/radicale#!/bin/sh basedomain="$(basename $RENEWED_LINEAGE)" if [ "$basedomain" = "Domain" ];then cp "$RENEWED_LINEAGE/fullchain.pem" "/etc/radicale/cert.pem" cp "$RENEWED_LINEAGE/privkey.pem" "/etc/radicale/key.pem" chown radicale:radicale "/etc/radicale/cert.pem" chown radicale:radicale "/etc/radicale/key.pem" systemctl reload radicale fi
Bevor wir den Server starten, legen wir ein Verzeichnis für die Daten und einen Benutzer an.
mkdir -p -m 750 /var/lib/radicale chown -R radicale:radicale /var/lib/radicale htpasswd -c -B /etc/radicale/users User systemctl enable --now radicale
Der Server ist nun unter https://nas:5232 erreichbar und man kann dort neue Adressbücher anlegen oder vorhandene VCF-Dateien hochladen.
Im Thunderbird installieren wir das Plugin CardBook. Dort wählen wir im Menü:
Neues Adressbuch / Im Netzwerk / Typ: CardDAV
.
Auf dem iPhone unter iOS öffnen wir die Einstellungen und wählen:
Kontakte / Accounts / Account hinzufügen / Andere / CardDAV-Account
.
Formularfeld | Eintrag |
Server/URL: | https://Domain:5232/User/Uuid |
Benutzername: | User |
Passwort: | Password |