[[software:citadel-administration]]

Citadel Groupware Administration

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.

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).

Die Nachrichten (Begrüßung, Verabschiedung, …) lassen sich im Ordner /usr/share/citadel-server/messages/ anpassen.

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

  1. den Node Name
  2. die IP oder den FQDN des andere Servers
  3. 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.

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.

In der Konfiguration wird leider bei den Push-Mail Einstellungen „External pager tool“ mit „Externe Pager-Server URL“ übersetzt. FIXME

Als Zusatzprogramm ist Calendar Paging interessant: Hier werden Benutzer bei neuen Terminen benachrichtigt.

Internet-Aliase können einfach in die vcard des Benutzers eingetragen werden (Verwaltung → Benutzer anlegen/bearbeiten).

siehe How do I configure email aliases for a user?.

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
  • Netzwerkverkehr zwischen Webcit und Citadel mitschneiden:
    tcpdump -w webcit.pcap -i lo

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
  1. mkdir tmp
  2. cd tmp
  3. Source-Paket mit folgendem Befehl herunterladen:
    apt-get source citadel-server
  4. cd /citadel-7.66/debian
  5. nano rules
  6. 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"
  7. abspeichern („STRG-X“ und „J“)
  8. cd ..
  9. Das Paket muss neu gebaut werden:
    dpkg-buildpackage
    1. 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
  10. erneut dpkg-buildpackage aufrufen
    1. erneut fehlt ein Paket (berkley-db):
      dpkg-checkbuilddeps: Nicht erfüllte Bauabhängigkeiten: libdb-dev
    2. „libdb-dev“ ist ein virtuelles Paket, das bereitgestellt wird von: libdb4.4-dev libdb4.3-dev libdb4.2-dev libdb3-dev
    3. ich nehme libdb4.4:
      aptitude install libdb4.4-dev
  1. cd ..
  2. 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

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
apt-get source webcit
chmod +x *.sh
chmod +x bootstrap buildpackages get_ical_data.sed