Inhaltsverzeichnis
Radicale
Server für
- Kalender → CalDav
- Aufgaben → Teil der Kalender
- Kontakte → CardDav
Das System hat keine GUI zur Bearbeitung von einzelnen Terminen oder Kontakten. Hier werden lediglich Kalender oder Adressbücher angelegt. Die Bearbeitung erfolgt über Programme wie Thunderbird, Kalender auf dem Ipad oder dem Smartphone.
Die Kommunikation sollte über eine sichere SSL-Verbindung stattfinden. Der Port 5232 sollte nicht durch die Firewall freigegeben werden, da dann eine unsichere Verbindung über IP-Adresse und Port möglich wäre.
Webinterface: <DOMAIN>/x1)
Serveradresse für TBSync (Thunderbird): <DOMAIN>/x/<USER>/
Installation
sudo apt install radicale python3-bcrypt python3-passlib apache2-utils
sudo nano /etc/radicale/config
[server] #für alle IPV4-Adressen hosts = 0.0.0.0:5232 max_connections = 50 # 100 Megabyte max_content_length = 100000000 # 30 seconds timeout = 30 [auth] type = htpasswd htpasswd_filename = /etc/radicale/users htpasswd_encryption = bcrypt # Average delay after failed login attempts in seconds delay = 1 [rights] type = from_file file = /etc/radicale/rights [storage] #Default. Muss nicht aktiviert werden #filesystem_folder = /var/lib/radicale/collections
1. Benutzer anlegen → legt auch die Datei Users an
sudo htpasswd -c -B /etc/radicale/users <USER>
Rechte für den Zugriff auf Datei Users anpassen
sudo chown radicale:radicale /etc/radicale/users
Nur radicales darf hier lesen
sudo chmod o-r /etc/radicale/users
Weitere Benutzer anlegen
sudo htpasswd -B /etc/radicale/users <USER2>
Benutzer löschen
sudo htpasswd -D /etc/radicale/users <USER2>
Passwort eines Benutzers ändern:
sudo htpasswd -B /etc/radicale/users <USER2>
Zugriff für die Daten (Kalender und Kontakte) anpassen
sudo chown -R radicale:radicale /var/lib/radicale/collections
sudo chmod -R 775 /var/lib/radicale/collections
Start
sudo systemctl start radicale.service
Automatisch starten
sudo systemctl enable radicale.service
Automatisches starten deaktivieren
sudo systemctl disable radicale.service
ReStart
sudo systemctl restart radicale.service
Status
sudo systemctl status radicale.service
Netwerkstatus von Radicale:
sudo lsof -i | grep radicale
Apache als Reverse-Proxy
Benötigte Erweiterungen:
sudo a2enmod proxy proxy_ajp proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html ssl
Domain registrieren und mit SSL-Zertifikat aktivieren: Apache Web-Server.
Hier werden zwei Varianten zur Nutzung des Proxy-Servers behandelt.
Erweiterung Domainname
Hier wird als Erweiterung das x genutzt, kann auch anders genannt werden2). Aufruf hier über <DOMAIN>/x
sudo nano /etc/apache2/sites-available/<DOMAIN>.conf
Einfügen (in die SSL-Variante):
<IfModule mod_ssl.c> <VirtualHost *:443> ... ... RewriteEngine On RewriteRule ^/x$ /x/ [R,L] <Location "x/"> ProxyPass http://localhost:5232/ retry=0 ProxyPassReverse http://localhost:5232/ RequestHeader set X-Script-Name /x </Location> ... ... </VirtualHost> </IfModule>
sudo apachectl configtest
sudo systemctl restart apache2
Verwendung einer Domain oder Subdomain
sudo nano /etc/apache2/sites-available/<SUBDOMAIN>.conf
Einfügen (in die SSL-Variante):
<IfModule mod_ssl.c> <VirtualHost *:443> ... ... ProxyPass / http://localhost:5232/ ProxyPassReverse / http://localhost:5232/ ... ... </VirtualHost> </IfModule>
# DocumentRoot kann entfernt oder deaktiviert (#) werden
sudo apachectl configtest
sudo systemctl restart apache2
Collaboration
Benutzer <GRUPPE> anlegen (für gemeinsame Kalender und Adressbücher)
sudo htpasswd -B /etc/radicale/users <GRUPPE>
Indirekte Freigabe über symbolischen Link. Hier erhält <USER> die Freigabe für benannte <Geteilte-Ressource> der <GRUPPE>.
sudo ln -s /var/lib/radicale/collections/collection-root/<GRUPPE>/<Geteilte-Ressource>/ /var/lib/radicale/collections/collection-root/<USER>/<Geteilte-Ressource>
Freigabe für radicale auf den symbolischen Link
sudo chown -h radicale:radicale /var/lib/radicale/collections/collection-root/<USER>/<Geteilte-Ressource>
Backup
hier liegen die Daten:
- /var/lib/radicale/
- /etc/radicale/