Drei Admin-Frontends für Exim eignen sich für die Domain- und Benutzerverwaltung und angrenzende Alltagsaufgaben. Exim4u, Vexim2 und Xams dienen als Handreichung für die eigenen Kunden, wenn deren Technikkenntnisse an Grenzen stoßen.
Nicht jeder kann und will in die Tiefen des MTA Exim hinabsteigen. Für kleine Unternehmen und Reseller, die virtuelle Mailaccounts verwalten, ist das Arbeiten auf der Shell auf Dauer zu unhandlich. Exim4u [1], Vexim2 [2] und Xams [3] bieten über ein Webinterface Zugriff auf das Domain- und Benutzermanagement, Antispam- und Antivirusdienste.
Die Tester installierten die Programme unter Debian 7.8. Der Server war mit den typischen LAMP-Komponenten (Apache, MySQL und PHP 5) sowie Exim 4.80 ausgestattet. Die Kandidaten sollten zeigen, wie gut sie mit dem Mailserver und verwandten Komponenten kommunizieren und wie leicht die Einrichtung gelingt.
Exim4u
Der erste Kandidat [1] steht unter einer BSD-ähnlichen Lizenz, die es erlaubt, die Quellen respektive Binaries zu verwenden und zu verändern, wenn Copyright-Hinweis und Lizenz erhalten bleiben. Der amerikanische Hersteller Mailhub4u stellt im Downloadbereich den Sourcecode bereit. Exim4u ist ein Fork von Vexim2 [2], hinkt der Entwicklung der Vorlage aber um zirka zwei Jahre hinterher. Etwas Bewegung im Github-Repository [4] zeigt, dass das Projekt noch Puls hat.
Die Tester schauten sich Version 2.1.1 vom Oktober 2012 an. Diese Ausgabe benötigt mindestens Exim 4.71, Apache, MySQL, SQlite, Perl, PHP und die Pear DB Library. Außerdem setzt das Programm auf Clam AV, Spamassassin, Dovecot oder Courier.
Exim4u macht Administratoren den Einstieg nicht gerade leicht. Die Installationsanleitung [5] ist zwar weitgehend vollständig, richtet sich aber eher an Red-Hat- und Centos-Benutzer. Wer auf Debian, Ubuntu oder Free BSD setzt, folgt nach der grundlegenden Installation den Kapiteln zur eigenen Distribution und passt das System entsprechend an.
In der Datei »/etc/exim/exim4u_local.conf.inc« ergänzten die Tester die Informationen zum Datenbankbenutzer, zum Passwort und zur MySQL-Socketdatei. Anschließend richteten sie die Datenbank und das Greylisting ein, wie in der Anleitung beschrieben. Im Unterverzeichnis »public_html/exim4u/config« ergänzten sie die Datei »variables.php« , außerdem die MySQL-Zugriffsdaten für das Webinterface.
Laut Projektseite arbeitet Exim4u mit den Postfachdiensten Dovecot und Courier zusammen; Konfigurationsdateien liefern die Entwickler allerdings nur für den ersteren aus und verweisen für Courier auf die Vexim2-Anleitung. Die Dovecot-Konfigurationsdateien, die nach »/etc/dovecot« gehören und die MySQL-Zugangsdaten aufnehmen, sind völlig veraltet und führen nicht zu einer lauffähigen Dovecot-Instanz. Vor allem die Datei »dovecot.conf« bedarf einer Komplettüberarbeitung.
Bereitschaftsdienst
Die Exim4u-Weboberfläche erreichen Anwender über »http://www.example.com/exim4u« und loggen sich mit dem Benutzernamen »siteadmin« und dem Passwort »CHANGE« ein. Das Dropdownmenü neben dem Login-Namen ist zunächst leer; nach dem Einrichten finden Benutzer hier später die Domain-Namen für die Postmaster-Accounts. Der erste Schritt führt in den Bereich »Site Password« , um ein neues Kennwort zu setzen.
Die Oberfläche kommt ohne viel Schnickschnack schlicht und spartanisch daher. Übersichtlich ist Exim4u damit schon, etwas Arbeit an den springenden Menüs und eine durchdachtere Navigation täten dem Tool aber gut. Von responsivem Design liegt das Exim4u-Interface weit entfernt, auch wenn es auf Tablet und Smartphone leidlich bedienbar ist.
Exim4u kennt neben dem Site-Admin zwei weitere Benutzertypen: den Postmaster und den einfachen User. Der Administrator darf Domains und Subdomains im System anlegen. Ihm stehen die drei Menüpunkte »Add Alias Domain« , »Add Local Domain« und »Add Relay Domain« zur Verfügung. Lokale Domains verwalten die Post direkt auf dem Server, ein Relay akzeptiert Mails und reicht sie weiter, Alias-Domains verweisen meist auf eine lokale Domain.
Beim Erstellen eines Domain-Eintrags erzeugt Exim4u einen Account mit Postmasterrechten. Als Benutzernamen schlägt das System »postmaster« vor (Abbildung 1), Anwender dürfen den Namen aber auch selbst wählen. Site-Admins limitieren auf Wunsch die Anzahl der Accounts pro Domain, richten Quotas ein, aktivieren Spamassassin als Default und stellen ein, ab wann der Dienst eine Mail als Spam markiert und ab welcher Punktzahl er sie verwirft.
Ein Postmaster meldet sich über die Startseite mit seinem Login-Namen an und sucht aus dem Dropdownmenü die ihm zugewiesene Domain aus. Anschließend bietet die Oberfläche Menüpunkte, um POP3- und IMAP-Accounts zu verwalten, Aliasse, Weiterleitungen und Catchalls anzulegen. Sofern auf dem Server Mailman oder Simple Mailing Lists installiert und eingerichtet sind, bietet Exim4u dafür eine rudimentäre Schnittstelle an. Postmaster definieren außerdem Adressen, die E-Mails abweisen, und Gruppen. Letzteres sind Mailadressen, denen der Postmaster mehrere Empfänger derselben Domain zuweist.
Beim Anlegen neuer Benutzeraccounts unter der Postmasterkennung tauchte im Test wiederholt die Fehlermeldung auf, dass das Domain Account Limit erreicht sei. Ab- und erneutes Anmelden behob das Problem. Die Tester konnten allerdings keine Ursache für das Verhalten herausfinden. Der Dialog zum Erzeugen einfacher Benutzerzugänge nimmt den Namen, die Mailadresse und das Passwort auf. Optional aktivieren Postmaster die Checkbox »Has domain admin privileges« und teilen sich anschließend den Managerposten für die Domain mit anderen Anwendern.
Postmaster legen ebenfalls Quotas für die Benutzer fest, die aber in den Grenzen bleiben müssen, die der Site-Admin vorgegeben hat. Antivirus- und Antispam-Maßnahmen aktivieren sie hier global. Benutzer dürfen die Einstellungen in den eigenen Einrichtungen später ändern.
Individuell
Normale Benutzer erreichen nach dem Anmelden eine Maske, in der sie Informationen zu ihrer Quota erhalten und Weiterleitungen an andere Adressen oder Abwesenheitsnachrichten konfigurieren. Das Feld »Vacation Message« nimmt einen individuellen Text auf (Abbildung 2). Wer Spamassassin aktiviert, kann zudem einstellen, ab welcher Punktzahl der Dienst eine Nachricht als Spam einstuft und ab welcher Punktzahl er diese direkt verwirft. Die Option »Spam Box« richtet sich im Wesentlichen an Benutzer, die ihre Mails über POP3 beziehen.
Exim4u-User definieren die Maximalgröße für eingehende Mails und richten ganz unten im Dialog Filter für den Mailheader ein. So ist es komfortabel möglich, eigene Blacklists im Webinterface zu erstellen. Eine Option, um über das Interface das Greylisting für einzelne Adressen zu deaktivieren, fehlt. Ist dies auf Serverebene bereits eingerichtet, gilt es für alle Domains und alle Accounts.
Exim4u integriert auf Wunsch den Webmaildienst Horde. Admins lesen dazu das Kapitel »WEBMAIL« in der Dokumentation [5]. Wer zusätzlich das Monitoring-Tool Munin installiert und einrichtet, erhält durch die Kooperation der beiden Programme Exim4u-Nutzungsstatistiken.
Vexim2
Virtual Exim 2 [2], so der volle Name des Programms, ist ein direkter Vorgänger von Exim4u. Der Entwickler Avleen Vig arbeitet zusammen mit seinem Team seit 2003 an dem Projekt, das unter einer BSD-Lizenz steht. Die Tester schauten sich die Version vom 10. März 2015 an und checkten dazu die Quellen aus dem Github-Repository aus. Vexim2 benötigt Exim 4, MySQL oder PostgreSQL, Apache oder einen anderen Webserver, PHP 5 oder neuer. Optional sind Mailman, Clam AV und Spamassassin.
Die Installationsanleitung ist für Free-BSD-Systeme gedacht; das Entwicklerteam hat aber Hinweise und Erklärungen für Debian-Nutzer hinzugefügt. Wer auf eine andere Distribution setzt, sollte im Zweifelsfall genug Zeit zum Testen und Basteln einplanen.
Als POP3-Daemon empfehlen die Entwickler Qpopper; alternativ kümmern sich Courier oder Dovecot um POP3 und IMAP. Anleitungen für die drei Dienste haben sie zur Dokumentation hinzugefügt; die beigelegten Hinweise für Cyrus sind nach eigenen Aussagen ungetestet. Die Erklärungen zu Courier und Dovecot auf Debian-Servern sind genauso veraltet wie bei Exim4u. Da die meisten Services auf dieser Distribution ihre Einrichtungsdateien inzwischen aufsplitten und in mehreren kleinen Files in einem Unterverzeichnis »conf.d« verstauen, müssen Debian-Admins einiges an Transferleistung erbringen – wer sich bereits mit Exim, Courier und Dovecot auskennt, hat Vorteile.
Vexim2 fühlt sich genau wie Exim4u in einem virtuellen Host zu Hause. Auf dem Testrechner landeten die entpackten Quellen im Documentroot-Verzeichnis im Unterordner »vexim2-master« . Im Webinterface meldet sich wie bei Exim4u zuerst der Benutzer »siteadmin« mit dem Standardpasswort »CHANGE« an.
Die Oberfläche sieht der von Exim4u zum Verwechseln ähnlich. Sie ist ebenfalls nicht responsiv, aber einigermaßen zugänglich für Smartphone- und Tablet-Nutzer. Die veraltete Option »Spam Box« im Interface der einfachen Useraccounts haben die Entwickler entfernt. Ansonsten sind alle Funktionen an genau den gleichen Stellen untergebracht. Nachdem der Admin das Kennwort geändert hat, widmet er sich der Domainverwaltung und richtet lokale Domains, Relays oder Aliasse ein.
Meister der Post
Der zweite Kandidat wählt als Standardbenutzername für Domain-Admins ebenfalls »postmaster« , was der Site-Admin aber jederzeit ändern kann. Beim Einrichten neuer Domains legt er auf Wunsch eine Maximalzahl für Accounts fest, definiert Quotas und entscheidet, wann Spamassassin nur Tags setzt und wann er Post aussortiert. Clam AV aktiviert der Site-Admin über ein Häkchen in der Checkbox »Anti Virus enabled« .
Der Postmaster einer Domain verwaltet Benutzer, Gruppen, Weiterleitungen und Catchalls (Abbildung 3), Aliasse und – sofern Mailman installiert und konfiguriert ist – Mailinglisten. Beim Anlegen von Accounts wirft Vexim2 genau wie Exim4u unregelmäßig Fehlermeldungen und beschwert sich, dass die Maximalanzahl erreicht sei. Auch hier hilft es, sich ab- und wieder anzumelden.
Sofern der Postmaster für einen neuen Account ein Häkchen bei »Admin« setzt, erhält der User privilegierten Zugang. Normale Benutzer aktivieren wie bei Exim4u Spamassassin und Clam AV für ihren Account, richten Mailweiterleitungen und Abwesenheitsnachrichten ein. Im unteren Bereich besteht die Möglichkeit, rudimentäre Filter zu definieren.
Aus dem Dropdownmenü suchen Anwender einen der Einträge »From:« , »To:« , »Subject:« und »X-Mailer:« aus und tragen die Zeichenkette daneben ins Feld ein (siehe Abbildung 4). Es ist nicht möglich, einen vorhandenen Filter zu bearbeiten. Ein beherzter Klick auf das Icon mit dem Mülleimer löscht ihn stattdessen.
Eine Integration in einen Webmaildienst bietet Vexim2 nicht an. Allerdings finden Roundcube-Nutzer im Plugin-Verzeichnis [6] eine Erweiterung, über die sie die einfachen Userfunktionen von Vexim2 erreichen. In puncto Greylisting sieht es nicht besser aus als bei Exim4u. Der erste Kandidat bringt zwar eine Einrichtungsdatei dafür mit, erlaubt es aber weder Site-Admin, Postmaster noch einfachen Benutzern, Greylisting ein- oder auszuschalten. Vexim2 enthält erst gar keine Greylisting-Konfiguration, sodass MTA-Admins dieses Feature ebenfalls auf Serverebene einrichten und (de-)aktivieren.
Xams
Programmierer Oliver Siegmar veröffentlichte bereits 2001 seine erste Version des Extended Account Management System [3]; seit 2007 leitet Stéphane Leclerc das Projekt, an dem inzwischen zahlreiche Entwickler mitarbeiten. Die Weiterentwicklung schreitet relativ langsam voran; Anwender können zirka ein Update pro Jahr erwarten. Die Tester schauten sich Version 0.2.4 vom 30. September 2014 an.
Xams steht unter der GPLv3, setzt neben Exim auf Courier für POP3 und IMAP sowie MySQL für die Benutzerdaten, die Oberfläche ist in PHP implementiert. Xams benötigt eine Perl-Umgebung auf dem Server. Auf dem Testrechner waren das die Pakete »libunix-syslog-perl« , »libconfig-inifiles-perl« , »libfile-chdir-perl« und »libcdb-file-perl« .
Nach dem Einspielen und Konfigurieren der Kernkomponenten Exim, Courier, Clam AV und Spamassassin bereiten Admins die Programme Exim und Courier für die Zusammenarbeit mit MySQL vor. Dazu deaktivieren sie den Courier-Auth-Daemon dauerhaft, damit er sich nicht mit dem Xams-Kollegen ins Gehege kommt. Die Original-Exim-Konfigurationsdatei hat ebenfalls ausgedient, Nutzer ersetzen sie durch die Pendants aus dem Xams-Unterverzeichnis »config« .
Ein Debian-Repository [7] nimmt Admins dieser Distribution einige Schritte ab. Nach der Installation des Pakets finden sie die Einrichtungsdateien unter »/etc/xams« . Die Konfigurationsroutine des Debian-Pakets setzt ebenfalls automatisch symbolische Links zur Exim- und Spamassassin-Einrichtungsdatei.
Gut verpackt
Systemverwalter anderer Distributionen kopieren von Hand den Ordner »gui« aus dem Xams-Verzeichnis ins Datenverzeichnis des Webservers; Debian-Admins müssen sich nicht darum kümmern. Auch das Einrichten der Datenbank übernimmt das Paket, während anderen Nutzern die Skripte aus dem Verzeichnis »database/mysql« helfen. Nach einer letzten Kontrolle der Datei »/etc/xams/exim.conf« und einem Neustart der betroffenen Dienste loggen sich Anwender mit dem Benutzernamen und Passwort »admin« im Webinterface (»http://www.example.com/xams« ) ein.
Die Oberfläche wirkt zwar etwas altbacken und kommt teilweise mit pixeligen Fonts daher, ist dafür aber recht übersichtlich. Sie ist auf Smartphones und Tablets verhältnismäßig gut zu bedienen, aber nicht responsiv. Nach dem Anmelden wenden sich Admins zunächst der Abteilung »Globale Administration« zu und ändern im Bereich »XAMS Konten« das eigene Passwort. Als einziger Kandidat im Test bietet Xams auch eine deutsche Übersetzung an, die Verwalter unter »Einstellungen« global aktivieren. Jeder Nutzer findet im Dropdownmenü des Login-Fensters auch Französisch und Englisch als Alternativen.
Kontobewegungen
Xams kennt drei Accounttypen: Der Administrator besitzt Zugriff auf alle Funktionen. Er richtet unter »Mail Administration« neue Sites, Zugänge und Aliasse ein. Er weist den Wiederverkäufern beliebig viele Sites zu. Sie bewegen sich dabei innerhalb der vom Admin definierten Grenzen. Endkunden stehen auf der untersten Ebene. Ein Reseller oder Admin übergibt ihnen beliebig viele Domains, sie nehmen dort innerhalb der Limits eigene Einstellungen vor.
Etwas unglücklich ist, dass jeder im Anmeldedialog stets den Accounttyp auswählen muss und sich Xams die Berechtigungen nicht anders merken kann. Wer sich vertut und statt »Administrator« den »Wiederverkäufer« unter »Benutzertyp« aussucht, erhält lediglich den Hinweis »Anmeldung fehlgeschlagen« .
Reseller oder Admins dürfen neue Sites anlegen, denen Xams dann eine oder mehrere Domains zuweist (siehe Abbildung 5). Nachdem sie Quotas, Postfachtypen, Spam- und Virenprüfung definiert haben, erstellt ein Klick auf »Neuer Benutzer« einen zu dieser Site gehörigen Account, der per Mail über alle zugeordneten Domains erreichbar ist. Sind an die Site »Huhnix« beispielsweise die beiden Domains »huhnix.org« und »huhnix.net« gebunden, landen Nachrichten an »heike@huhnix.org« sowie »heike@huhnix.net« im selben Postfach. Reseller managen unter »XAMS Konten« Zugänge für die Endkunden.
Beim Einrichten neuer Benutzerzugänge entscheiden die Verantwortlichen nicht nur über Mailquota und Postfachtyp, sondern auch über Viren- und Spamschutz für ein- und ausgehende Nachrichten. Clam AV und Spamassassin richtet der Serveradministrator im Backend ein – sind die Features für eine Site nicht global aktiviert, beschwert sich Xams und weist mit einem Tooltipp (rotes Ausrufezeichen) darauf hin, dass eine Funktion für die Site nicht eingerichtet ist (siehe Abbildung 6).
Eine Greylisting-Option fehlt ebenso wie eine Kooperation mit Webmailern. Dafür punktet Xams an anderer Stelle und erlaubt Administratoren über das Interface Einsicht ins Protokoll (»Globale Administration | Ereignis-Log« ) und eine minimale Datenbankanalyse. Komfortabel finden die Tester ebenfalls die Vorlagen für Sites und Benutzerzugänge, die viel Tipparbeit abnehmen.
Alter Verwalter?
Keiner der Kandidaten ist wirklich auf dem neuesten Stand der Technik. Dass die Interfaces nicht responsiv oder schön sind, kann man dabei noch verschmerzen; veraltete und unvollständige Anleitungen bereiten schon mehr Probleme und stellen selbst erfahrene Admins vor einige Hürden. Xams hat bei Installation und Konfiguration die Nase vorn – nicht nur wegen des aktuellen Debian-Pakets, sondern auch wegen der besser verständlichen Dokumentation. Dass das Webinterface deutsch lokalisiert ist, gibt zusätzliche Pluspunkte.
Exim4u und Vexim2 warfen beide bei der Benutzerverwaltung mit Fehlermeldungen über erreichte Limits um sich – obwohl diese nicht überschritten waren. Hier half nur, sich ab- und wieder anzumelden. Beide Exim-Manager würden vermutlich sehr davon profitieren, wenn die Entwicklerteams gemeinsame Sache machten: So könnten sich einige um ein sauberes Kernprogramm kümmern, andere die Dokumentation an moderne Distributionen anpassen und wieder andere für ein zeitgemäßes Webdesign und eine lokalisierte Oberfläche sorgen. Gut gefällt an Vexim2 und dem Nachfolger Exim4u, dass es getrennte Postmaster-Zugänge für die einzelnen Domains gibt.
Xams löst das anders und richtet Verwaltungszugänge für Sites ein, die auch mehrere Domains bündeln können. Obwohl die Oberfläche auf den ersten Blick undurchsichtiger ist als die der Konkurrenz, geht Xams als Sieger aus dem Test hervor. Zwar schreitet auch hier die Entwicklung nur langsam voran, vor mehr als zehn Jahren versprochene Erweiterungen wie die Unterstützung von PostgreSQL, Postfix, Cyrus oder Qmail sind bis heute nicht umgesetzt.
Dafür bereitet Xams im Betrieb aber wenig Probleme. Wer Debian auf seinem Mailserver einsetzt, ist besonders fein raus: Dank des fertigen Pakets haben diese Admins schnell ein voll funktionsfähiges System an der Hand.
Infos
- Exim4u: http://exim4u.org
- Vexim2: https://github.com/avleen/vexim2
- Xams: http://www.xams.org
- Exim4u bei Github: https://github.com/Exim4U/src
- Exim4u-Dokumentation: http://exim4u.org/html/documentation.html
- Roundcube-Plugins: http://trac.roundcube.net/wiki/Plugin_Repository
- Xams für Debian: http://debs.xams.org












