Citadel Groupware Administration
Installation
Debian Lenny
Für Debian i386 and amd64 gibt es vorgefertigte Pakete eine Anleitung findet sich hier.
nano /etc/apt/sources.list
und die folgenden Zeile eintragen
deb http://debian.citadel.org/debian/ lenny main
aptitude update aptitude install citadel-suite
Bei der Installation wird nach dem Einrichten eines Webservers gefragt. Dazu kann man Apache konfigurieren lassen oder einen eigenen Webserver auf Port 8504 (standardmäßig) einrichten lassen.
Konfiguration
Standardmäßig öffnet citadel eine Menge Ports:
Port (Dienst) | Aufgabe |
---|---|
25 (SMTP) + 587 (submission: SMTP MSA) | SMTP nimmt eMails externe Benutzer an, SMTP MSA nur Nachrichten berechtigter Nutzer |
110 (POP3) + 995 (pop3s) | eMail-Abruf |
143 (imap) + 993 (imaps) | eMail-Abruf |
465 | ? |
504 (citadel-Port) | Replikation |
2020 | ManageSieve-Server-Port (Filter auf dem Server) |
5222 (xmpp-client) | Jabber |
443 (SSL) + 8504 | Webmail, kann auch auf Port 80 o.ä- konfiguriert sein. |
Die Konfiguration und Benutzung kann auch über die Shell erfolgen (Befehl: citadel
).
Nachrichten
Die Nachrichten (Begrüßung, Verabschiedung, …) lassen sich im Ordner /usr/share/citadel-server/messages/
anpassen.
Replikation
Die Replikation setzt lediglich vorraus, das sich Partner von Zeit zu Zeit verständigen können. Dabei werden allerdings für Räume repliziert, die eMail-Ordner der Benutzer sind dabei nicht enthalten.
Die Namen der Server (node names) sollten sinnvoll und sorgfältig geplant werden, eine spätere Änderung erfordert die Anpassung der Adressbücher aller Benutzer auf diesem Server.
Für die Einrichtung der Replikationsfunktion benötigt man
- den Node Name
- die IP oder den FQDN des andere Servers
- eine shared secret auf beiden Maschinen.
Die Pfade für die Replikation werden selbsterlernt, etwa wenn ein Server nur über eine Zwischenstation erreicht werden kann.
Räume freigeben
Aus Performancegründen sollte man nur wirklich global benötigte Räume freigeben, z.B. einen Raum „Ankündigungen“. Diese kann Uni oder Bi-direktional freigegeben werden, wenn also beide Standorte die jeweils anderen Nachrichten erhalten wollen, muss auf beiden Servern freigegeben werden.
SMS-Benachrichtigungen
In der Konfiguration wird leider bei den Push-Mail Einstellungen „External pager tool“ mit „Externe Pager-Server URL“ übersetzt.
Als Zusatzprogramm ist Calendar Paging interessant: Hier werden Benutzer bei neuen Terminen benachrichtigt.
Aliase
Internet-Aliase können einfach in die vcard des Benutzers eingetragen werden (Verwaltung → Benutzer anlegen/bearbeiten).
SSL-Zertifikat
Die SSL-Schlüssel kommen unter dem Dateinamen citadel.cer
(öffentlicher Schlüssel) und citadel.key
(privater Schlüssel) in die Ordner
- /etc/ssl/webcit
- /etc/ssl/citadel
Diagnose
- Netzwerkverkehr zwischen Webcit und Citadel mitschneiden:
tcpdump -w webcit.pcap -i lo
Citadel mit Debugging-Fähigkeiten bauen
Vorraussetzungen: Debian (hier: Etch), Citadel aus deb-Paketquelle.
Relevante Doku:
Am Beispiel der Version 7.66:
Vorbereitungen:
- dpkg-dev muss installiert sein (aptitude install dpkg-dev).
- in der /etc/apt/sources.list muss diese Zeile vorhanden sein:
deb-src http://debian.citadel.org/source stable source
- mkdir tmp
- cd tmp
- Source-Paket mit folgendem Befehl herunterladen:
apt-get source citadel-server
cd /citadel-7.66/debian
nano rules
- die Zeile #to enable debugging: export DEB_BUILD_OPTIONS=„debug profiling threadoff“ durch Zeilenumbruch aktivieren:
#to enable debugging: export DEB_BUILD_OPTIONS="debug profiling threadoff"
- abspeichern („STRG-X“ und „J“)
- cd ..
- Das Paket muss neu gebaut werden:
dpkg-buildpackage
- Falls gleich eine Fehlermeldung wegen fehlender Abhängigkeiten kommt:
dpkg-checkbuilddeps: Nicht erfüllte Bauabhängigkeiten: debhelper (>= 4) po-debconf bison autotools-dev libdb-dev libical-dev (>= 0.43) libldap2-dev libncurses5-dev libpam0g-dev libsieve2-dev libssl-dev libexpat1-dev libcitadel-dev (>= 7.42) libcurl4-openssl-dev | libcurl3-openssl-dev zlib1g-dev
also alle diese Pakete nachinstallieren (evtl. ist später libcurl4-openssl-dev statt libcurl3-openssl-dev nötig):
aptitude install debhelper po-debconf bison autotools-dev libdb-dev libical-dev libldap2-dev libncurses5-dev libpam0g-dev libsieve2-dev libssl-dev libexpat1-dev libcitadel-dev libcurl3-openssl-dev zlib1g-dev
- erneut dpkg-buildpackage aufrufen
- erneut fehlt ein Paket (berkley-db):
dpkg-checkbuilddeps: Nicht erfüllte Bauabhängigkeiten: libdb-dev
- „libdb-dev“ ist ein virtuelles Paket, das bereitgestellt wird von: libdb4.4-dev libdb4.3-dev libdb4.2-dev libdb3-dev
- ich nehme libdb4.4:
aptitude install libdb4.4-dev
- cd ..
- Nun können wir das Paket Installieren (Dateinamen werden bei anderen Versionen anders lauten, auf Meldung am Ende des „dpkg-buildpackage“-Aufrufs achten!):
dpkg -i citadel-suite_7.66-86_all.deb citadel-common_7.66-86_all.deb citadel-doc_7.66-86_all.deb
Debian Programmers
http://www.citadel.org/doku.php/installation:sourcecode http://www.citadel.org/doku.php/faq:installation:compile_debs
aptitude install build-essential curl g++ gettext shared-mime-info libssl-dev gnome-icon-theme aptitude install libcitadel-dev quilt ./bootstrap ./buildpackages debian
Sourcecode from debian-package
apt-get source webcit chmod +x *.sh chmod +x bootstrap buildpackages get_ical_data.sed