Zarafa Installation unter Debian Linux

Vor einer Weile hatte ich schon einmal probiert zarafa zu installieren. Leider war ich damals nicht so recht erfolgreich bzw. bin auf einige Probleme gestoßen, die mich schnell wieder dazu gebracht haben davon ab zu lassen.

Nun habe ich der ganzen Sache eine zweite Chance gegeben, aber nicht weil ich es mir anders überlegt habe, sondern weil einige Zeit vergangen ist und damit einige neue Versionen herausgekommen sind. Und ich muss sagen, jetzt wo es ca. 2 Tage läuft gefällt es mir ganz gut. Genaueres wird sich dann wohl in nächster Zeit zeigen.
Im Folgenden zeige ich, wie die Installation bei mir abgelaufen ist.

Vorbereitungen

Als Grundlage habe ich mich für eine 64-Bit Linux Distribution entschieden, genauer gesagt Debian 5.0.3 x86_64

Zarafa bringt keinen eigenen MTA mit. Zarafa empfiehlt die Benutzung von postfix, was auch stets meine erste Wahl unter Linux ist.

Daher führt man zu Installation Folgendes aus:
aptitude install postfix

Wer sich nicht sicher ist kann jetzt bei der Konfiguration von postfix erst mal „Keine Konfiguration“ auswählen.
Ich werde später noch kurz auf die Konfiguration von postfix eingehen.

Weitere Voraussetzung sind eine mysql-Datenbank und der apache-Webserver mir php5, was wir über den folgenden Befehl installieren können:

aptitude install libapache2-mod-php5 mysql-server-5.0

Das root-Passwort welches für mysql-Server gesetzt werden soll wird nach der Installation abgefragt. Gut merken, denn das brauchen wir gleich im nächsten Schritt.

Da ich es unsauber finde dem zarafa-Server die mysql root-Zugangsdaten zu geben legen wir als nächstes einen zarafa-Benutzer und die Datenbank an.

mysql -u root -p
create database zarafa;
grant usage on *.* to zarafa@localhost identified by 'MeinZarafaKennwort';
grant all privileges on zarafa.* to zarafa@localhost;
exit;

Das sieht dann in etwa so aus.

(natürlich ist das nicht das Passwort, welches ich benutzt haben 😉 )

Installation von Zarafa

Download der zur Distribution passenden Zarafa-Version unter http://www.zarafaserver.de/download-community

Entpacke der Installations-Pakete und Start der Installation:
tar xfz zarafa-6.40.1-debian5.0-x86_64.tar.gz
cd zarafa-6.40.1-debian5.0-x86_64
./install.sh

Die folgenden Schritte sind eigentlich selbsterklärend.
Der Installer prüft, ob das System alle Voraussetzungen erfüllt und fragt ob es eventuell fehlende Pakete nachinstallieren soll.
Dies funktioniert über apt dann eigentlich problemlos.

Mit Ausnahme der mysql-Zugangsdaten kann man alle Werte mit auf Standard belassen und mit Enter bestätigen.
Bei den mysql-Daten muss man natürlich die zuvor erstellten Daten angeben.
Please answer the following questions:

MySQL Server [localhost] :
MySQL Port [3306] :
MySQL User [root] : zarafa
MySQL Password [] : MeinZarafaKennwort
Database name [zarafa] :

Am Ende dieses Vorgangs ist die Installation von Zarafa bereits abgeschlossen und die Dienste sind auch direkt gestartet worden.
Man könnte jetzt schon Benutzer anlegen und auch das Webinterface, sowie pop3 und imap benutzen.

Um das Ganze aber „rund“ zu machen sind noch ein paar Nacharbeiten notwendig.

Nacharbeiten

Damit ActiveSync funktioniert muss man noch z-push installieren, sowie im apache https und den ScriptAlias konfigurieren.

Zunächst die Installation von z-push:
cd /var/www
wget http://download.berlios.de/z-push/z-push-1.4.1RC2.tar.gz
tar xfz z-push-1.4.1RC2.tar.gz
cd z-push
chmod 755 state
chown www-data.www-data state

cd /etc/apache2/sites-available/
echo 'Alias /Microsoft-Server-ActiveSync /var/www/z-push/index.php' >> zarafa-webaccess

Ganz wichtig es MUSS(!) ein Alias sein. Es funktioniert NICHT wenn man das Verzeichnis „z-push“ in „Microsoft-Server-ActiveSync“ unbenennt.

Aktivieren von https:
cd /etc/apache2/mods-enabled
ln -s ../mods-available/ssl.load .
ln -s ../mods-available/ssl.conf .
cd /etc/apache2/sites-enabled
ln -s ../sites-available/default-ssl 010-default-ssl
/etc/init.d/apache2 restart

Bevor wir jetzt den ersten Benutzer anlegen, müssen wir noch sicherstellen, dass die E-Mail-Ordner auch auf deutsch angelegt werden.
Dazu habe ich bisher nur folgende Lösung gefunden. Es müsste theoretisch auch noch anders gehen, aber ich habe noch nicht herausgefunden wie er woher welche Variablen bezieht.

Die Dateien müssen editiert werden:
/etc/zarafa/userscripts/users_common.sh
/etc/zarafa/userscripts/groups_common.sh
/etc/zarafa/userscripts/companies_common.sh

Folgende Zeile muss eingefügt werden:
ZARAFA_LANG="de_DE.UTF-8"

Das sollte dann in etwa so aussehen:

So nun können wir einen Benutzer anlegen:
zarafa-admin -c einbjoern -P -f "Bjoern Kaiser" -e userA@domain1.cxm

Jetzt kann die erste Anmeldung am Webaccess erfolgen: https://SERVER_NAME_ODER_IP/webaccess/
oder man kann per ActiveSync-Zugriff auf den Server z.B. mit einem Mobil-Telefon zugreifen.

Damit es beim nächsten Update der Debian Distribution (aptitude safe-upgrade oder aptitude dist-upgrade) kein böses Erwachen gibt sollte man noch ein paar Pakete auf hold setzen, da Zarafa diese in einer bestimmten Version benötigt.
Keine Angst das sind maximal 4 Pakete.

echo libvmime0 hold | dpkg --set-selections
echo libical0 hold | dpkg --set-selections

Konfiguration von postfix

Damit auch E-Mails an den Zarafa-Server übermittelt wird muss noch postfix konfiguriert werden.
Dazu gibt es verschiedene Möglichkeiten, wobei ich mich für die Übermittlung per lmtp an den zarafa-dagent entschieden.
Der zarafa-dagent ist allerdings standardmäßig deaktiviert.
Zur Aktivierung setzt man in der Datei /etc/default/zarafa-dagent den Wert DAGENT_ENABLED=yes
Und startet danach den zarafa-dagent:
/etc/init.d/zarafa-dagent start

Die genaue Konfiguration von postfix würde würde den Umfang dieses Howtos überschreiten, daher gehe ich nur kurz darauf ein.

Hier die Einstellungen die ich für wichtig halte:

mydestination =
inet_interfaces = all


virtual_mailbox_domains = /etc/postfix/virtual_domains
virtual_mailbox_maps = hash:/etc/postfix/virtual
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_transport = lmtp:127.0.0.1:2003

Die Datei /etc/postfix/virtual_domains enhält die Domains für die der Server verantwortlich ist:

domain1.cxm
domainfoo.cxm

Die Datei /etc/postfix/virtual enthält die E-Mail-Adressen bzw. Alias-Adressen:

userA@domain1.cxm userA@domain1.cxm
Auser@domain1.cxm userA@domain1.cxm
userX@domainfoo.cxm userX@domainfoo.cxm

Die zweite Spalte entspricht dabei die E-Mail-Adresse die man beim Anlegen des Benutzers mit zarafa-admin angeben hat.

Da die zweite Datei als hash-Datei angegeben wurde muss man die hash-DB-Datei noch erzeugen
postmap /etc/postfix/virtual

Und zum Schluss noch /etc/init.d/postfix restart

Kommentar schreiben

16 Kommentare.

  1. Vielen Dank Björn für die ausführliche Anleitung zur Installation von Zarafa – hat mir sehr weitergeholfen.
    Hatte vor einiger Zeit schon einmal probiert Zarafa zu installieren, bin jedoch daran gescheitert. Jetzt hat alles funktioniert und ich bin dir sehr dankbar für das gute Tutorial.

    Habe Zarafa bei mir unter Ubuntu installiert. Muss mich jetzt noch um postfix kümmern und ein paar kleinere Einstellungen vornehmen.

  2. Ich wo muss ich Postfix konfignurieren weil ich keine main.cf im postfix ordner habe

  3. Kleiner Hinweis am Rande: Ich habe die aktuellste Version (7.0) installiert und beim Transport per LMTP muss ich (bei der Installation mit den Standard-Werten) den Port 2003 (siehe auch http://www.zarafa.com/wiki/index.php/Zarafa_LMTP_delivery) verwenden.

  4. Freie Exchangealternative Zarafa | blog.skerhutt.info - pingback on 1. November 2011 um 18:59
  5. Zur Aktivierung setzt man anstelle in der Datei /etc/default/zarafa-dagent
    in der Datei /etc/default/zarafa der Wert DAGENT_ENABLED=yes zu setzen. Aber sonst super Anleitung danke vielmals…

  6. HI.. sehr fein..

    Wie kann ich einen bestehenden User wieder löschen?

    danke

  7. Benutzer wieder löschen kann man über das Kommandozeilen Tool zarafa-admin.
    Zum Löschen eines Benutzer wäre das z.B. zarafa-admin -d username
    Aber aufgepasst, dadurch wird nur der Benutzer gelöscht der Mailbox-Speicher bleibt und kann entweder wieder mit einem anderen Benutzer verbunden werden oder auch gelöscht werden. Details stehen in der man-page.

  8. Hey Björn,
    vielen Dank für deine Anleitung. War zu 90% Copy&Paste-Arbeit. Da wäre Guttenberg sogar beeindruckt gewesen.
    Einen Kleinigkeit hatte jedoch nicht geklappt. Meine Erkenntnis soll euch Teil werden 😉 :

    Situation:
    – Der benutzer wurde mit „zarafa-admin“ angelegt und man will nun Webaccess testen, also auf https://domain/webaccess gehen.

    Falls dort der Fehler „unknown mapi error: mapi_e_not_found “ autaucht, konnte ich wie folgt Abhilfe schaffen:

    „zarafa-admin –create-store benutzername“

    War nicht meine Idee, daher verlinke ich auf die Ebenfalls dankbar Mitteilung (danke):

    http://www.server-wissen.de/internet/zarafa-groupware/zarafa-unknown-mapi-error-mapi_e_not_found-fehler/

    Gruß

    Steffen

  9. Hallo, danke für den hilfreichen Beitrag.
    Kann man auch per Zarafa und IMAP zugreifen lassen?
    Danke für deine Antwort!
    Gruß

  10. Commander Data

    Hallo!
    Ein interessanter Artikel, vielen Dank!

    Hast Du vielleicht eine Ahnung, ob man die Sprache der Postfach-Ordner nachträglich noch umstellen kann – und wenn ja, wie?

    Gruß,
    Data

  11. Commander Data

    Noch ein Tip für Deine Artikel:

    Es wäre gut, wenn gleich am Anfang der Artikel die genauen Versionen von Anwendungen und Betriebssystemen dargestellt werden.

    Zum Zeitpunkt der Veröffentlichung kann man sich das häufig noch denken, ein halbes Jahr später muss das nicht mehr unbedingt so eindeutig sein…

  12. Magnus Brachat

    Hallo Björn,

    absolut genial, danke, nachdem ich verstanden habe dass man unter den aktuellen Versionen von Debian und Zarafa die Postfix Dateien /etc/postfix/virtual_domains und /etc/postfix/virtual erstellen muss. Danach läuft alles super. Dickes Merci

  13. Hallo Björn,

    muss ich sasl, konfigurieren/installieren wenn ich zarafa ausschließlich mit der Weboberfläche nutzte?

    Viele Grüße

  14. Hallo Björn,

    ist SASL Pflicht, wenn ich Zarafa ausschließlich über die Weboberfläche zur Verfügung stelle?

    Viele Grüße

  15. Super! Danke für diese kurze und hilfreiche Anleitung,
    nun kann ich meine 10mail Postfächer zentral dank Zarafa + fetchmail zusammenfassen zu einem konto!

Kommentar schreiben


Hinweis - Du kannst dies benutzenHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Trackbacks und Pingbacks: