======Allgemein====== **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. ====== Jail ====== Zunächst kann eine Jail installiert werden. Dies wird entsprechend [[Jail erstellen]] durchgeführt. ======Apache====== 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. ======postgresql====== ===== Installation ===== Anschließend wird Postgresql installiert. # portmaster -d databases/postgresql84-server ===== Betrieb in einer Jail ===== 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. ===== Datenbank initialisieren ===== 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====== 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====== ===== Installation ===== DaviCal ist der CalDAV-Server zur Ablage der Kalender. Er wird wie folgt installiert (im Beispiel mit [[Portmaster]]) # portmaster -d www/davical ===== Initialisierung ===== 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/ ======phpcalendar======