Davical ist ein Serverprogramm welches Kalender per caldav zur Verfügung stellt. Somit ist es möglich Kalender online abzulegen um diese zur Synchronisation für verschiedene Geräte vorzuhalten.
Zunächst kann eine Jail installiert werden. Dies wird entsprechend Jail erstellen durchgeführt.
Der Webserver Apache wird nach Apache installieren installiert. Im speziellen Fall wurde abweichend vom Standardport 80 ein anderer gewählt da auf dem System bereits ein Apache läuft.
Anschließend wird Postgresql installiert.
# portmaster -d databases/postgresql84-server
Sollte der Postgresql in einer Jail betrieben werden so muss zunächst im Hostsystem der Shared-Memory aktiviert werden. Im Hostsystem muss der Wert security.jail.sysvipc_allowed auf 1 gesetzt werden. Hierzu wird die Datei /etc/sysctl.conf um folgende Zeile ergänzt:
security.jail.sysvipc_allowed=1
Zudem wird die /etc/rc.conf des Hostsystems um dolgende Zeile ergänzt.
jail_sysvipc_allow="YES"
Es sollte einem klar sein, dass die Verwendung von Shared-Memory eine mögliche Sicherheitslücke darstellt. Leider ist die Nutzung von Postgresql in einer Jail anders nicht möglich.
Die Datenbank muss zunächst initialisiert werden.
# /usr/local/etc/rc.d/postgresql initdb
Die /etc/rc.conf sollte noch um folgende Zeile ergänzt werden um Postgresql beim Systemstart zu laden.
postgresql_enable="YES"
Die Datenbank kann von Hand mit
# /usr/local/etc/rc.d/postgresql start
gestartet werden.
Um einen User mit Verwaltungsrechnten anzulegen wird zunächst als root zum pgsql-User gewechselt und danach der Benutzer angelegt.
#su pgsql $ createuser -sdrP username
PhpPgAdmin ist ein Werkzeug zur Administration einer Postgresql-Servers. Installiert wird es per databases/phppgadmin.
Hierzu wird unter anderem PHP5 benötigt welches laut der Beschreibung PHP5 installieren eingerichtet werden muss.
# cp -pr /usr/local/www/phpPgAdmin /usr/local/www/apache22/data/
Nun ist phpPgAdmin unter dem Link „http://DEINESERVERIP:DEINAPACHEPORT/phpPgAdmin“ erreichbar.
Mit dem oben angelegten User kann nun eingelogt werden.
DaviCal ist der CalDAV-Server zur Ablage der Kalender. Er wird wie folgt installiert (im Beispiel mit Portmaster)
# portmaster -d www/davical
Mit dem entsprechend mit installierten Script werden die benötigten Datenbanken angelegt.
# su pgsql /usr/local/share/doc/davical/dba/create-database.sh
Somit werden die benötigten Daten angelegt.
Supported locales updated. Updated view: dav_principal.sql applied. CalDAV functions updated. RRULE functions updated. Database permissions updated. NOTE ==== * You will need to edit the PostgreSQL pg_hba.conf to allow the 'davical_dba' database user access to the 'davical' database. * You will need to edit the PostgreSQL pg_hba.conf to allow the 'davical_app' database user access to the 'davical' database. * The password for the 'admin' user has been set to 'XXXXXXX'" Thanks for trying DAViCal! Check in /usr/share/doc/davical/examples/ for some configuration examples. For help, visit #davical on irc.oftc.net.
Unter anderem wird hier das Kennwort für den user 'admin' angelegt.
In die Datei /usr/local/pgsql/data/pg_hba.conf wird als oberste nicht-kommentierte Zeile folgende eingefügt:
local davical davical_app trust
Nun wird noch die Konfigurationsdatei entsprechend kopiert und angepasst:
cp /usr/local/www/davical/config/example-config.php /usr/local/www/davical/config/config.php
Nun wird noch die Davical-Apache-Konfiguration in das Include-Verzeichnis des Apache kopiert.
cp /usr/local/share/doc/davical/httpd-davical.conf /usr/local/etc/apache22/Includes/