Zarafa E-Mail Empfänger und Verteilergruppen aus MySQL

Die Groupware Zarafa bringt keinen eigenen MTA (Mail transfer agent) mit, sondern verlässt sich auf Postfix. Es gibt verschiedene Möglichkeiten, Zarafa mit Postfix zu integrieren. Da sich alle nötigen Informationen bereits in der MySQL Datenbank befinden, in der Zarafa seine Konfiguration speichert, macht es Sinn, Postfix ebenfalls an diese Datenbank anzubinden. So verhindert man eine doppelte Einrichtung von Adressen, Verteilern usw.. Eine entsprechende Lösung wird in der Zarafa Dokumentation zwar beschrieben, doch berücksichtigt diese keine Verteilergruppen. Sehen wir uns die notwendige Konfiguration etwas genauer an:

Postfix Konfiguration

Da es sich bei den Zarafa Benutzern nicht um Linux Benutzer handelt, die Postfix kennt, müssen diese Postfix bekannt gemacht werden, damit der MTA nicht mit der Meldung „User unknown“ verwirft. Diese geschieht über zwei Parameter in der Datei /etc/postfix/main.cf (Pfad kann abhängig von der verwendeten Distribution eventuell leicht abweichen):

  • virtual_mailbox_maps für die eigentlichen Postfächer
  • virtual_alias_maps für Aliase, alternative Adressen und Verteiler

Um auf die MySQL Datenbank zuzugreifen, muss eine zusätzliche Konfigurationsdatei erstellt werden:

[bash]
touch /etc/postfix/mysql-users.cf
nano /etc/postfix/mysql-users.cf
[/bash]

Der Inhalt der Datei muss so aussehen:

[bash]
user = MySQL User
password = Password
hosts = 127.0.0.1
dbname = zarafa

query=(SELECT value FROM objectproperty WHERE propname=’emailaddress‘ AND objectid IN(SELECT objectid FROM objectrelation WHERE parentobjectid=(SELECT objectid FROM objectproperty WHERE value=’%s‘))) UNION ALL (select value from objectproperty where objectid=(select objectid from objectproperty where value=’%s‘ limit 1) and propname=’emailaddress‘);
[/bash]

Benutzer und Passwort müssen natürlich noch an das eigene System angepasst werden.

Das MySQL Query liefert für Verteilergruppen alle enthaltenen E-Mail Adressen zurück. Der Teil vor dem UNION ALL ist aus dem Zarafa Handbuch übernommen. Siehe auch https://doc.zarafa.com/7.1/Administrator_Manual/en-US/html/_MTAIntegration.html für die gesamte Postfix Konfiguration.

Die Einbindung in Postfix geschieht über die Datei /etc/postfix/main.cf:

[bash]
virtual_mailbox_maps = mysql:/etc/postfix/mysql-users.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-users.cf
[/bash]

Nachdem die Konfiguration angepasst wurde, muss Potfix neu gestartet werden

[bash]
sudo service postfix restart
[/bash]

Damit ist die Konfiguration von Postfix abgeschlossen.

Zarafa Konfiguration

Um in Zarafa einen neuen E-Mail-Verteiler anzulegen sind die folgenden Schritte notwendig:

Verteilergruppe erstellen

[bash]zarafa-admin -g Verteilergruppenname[/bash]

E-Mail-Adresse des Verteilers festlegen

[bash]zarafa-admin –update-group Verteilergruppenname -e Verteilergruppename@domain.de[/bash]

Benutzer zur Gruppe hinzufügen

[bash]zarafa-admin -b zarafa_user1 -i Verteilergruppenname
zarafa-admin -b zarafa_user12-i Verteilergruppenname[/bash]

Die Verteilergruppe ist jetzt unter Verteilergruppenname@domain.de erreichbar.

 

4.67 avg. rating (92% score) - 3 votes

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Spamschutz * Time limit is exhausted. Please reload the CAPTCHA.