Citadel als Mailserver Alternative zu Sendmail, Postfix, Exim & Co

Du fährst einen Linux-Server, hast mit Schweiß und Linux-Kompendium auf dem Schoß den message transfer agent etabliert? Dann lief etwas nicht und Du musstest nochmals alle Konfigurationsdateien durchgehen bei den verschiedenen Applikationen, die für gewöhnlich auf einem Linux-Server und im Zusammenspiel untereinander einen funktionierenden Mailserver ausmachen? Dann lief es irgendwann, doch nach einiger Zeit Du bist die mühselige Verwaltung neuer und alter Mailaccounts leid geworden? Tröste Dich, lieber Admin, bist ja nicht allein mit Deiner Schwermut. 😉

Gut, dass es Citadel gibt! Ein 32 Jahre altes Softwarepaket, welches Du innerhalb von Minuten auf Deinem Debian, Ubuntu, oder was auch immer installiert hast und das den ganzen anderen MTA-Krempel (und einiges mehr) schlicht überflüssig macht.

Citadel/UX, so der eigentliche Name dieser Perle, war bereits lange vor der Erfindung des World Wide Web ein vielgenutztes Bulletin board system innerhalb der Mailbox-Szene. 1981 wurde Citadel mit BDS C für das CP/M Betriebssystem entwickelt. Es lief in Rechnern mit 64K RAM und konnte Hayes-kompatible Modems ansteuern. 1987 wurde das mittlerweile äußerst beliebte Citadel auf Unix portiert und es lernte TELNET. Später folgte bei Citadel der Paradigmenwechsel auf das Client/Server Modell. So wurde alsbald ein Windows 3.1 Client für Citadel sehr erfolgreich. Zumindest bis zur Geburt des World Wide Web. Schnell wurde da aus dem WinCit Client, sehr passend in der Namensgebung, ein WebCit. Das ist eine zugehörige Middleware mitsamt integriertem Webserver zur Nutzung von Citadel. Das war also der lange Weg Citadels vom Citadel-cpm, über Citadel-86, hin zum Citadel/UX.

Citadel ist als Produkt der Liebe zu guter Software selbstredend kostenlos und open source.

Denjenigen, die Citadels Existenz noch nicht wahrgenommen haben, will dieser Artikel Citadel als MTA-Alternative präsentieren. Doch ist Citadel mittlerweile soviel mehr in Einem. Sicher könnte man argumentieren, dass diese dicht gepackte Funktionalität gegen alttestamentarische Unix/Linux-Glaubensgrundsätze verstösst, also ‘alles ist eine Datei’, ‘eine Funktion ist ein Programm’ usw., doch Citadel macht seine Sache wirklich zu gut und es lässt sich sehr robust betreiben. Hier einmal die Features:

  • Email, calendaring, address books, bulletin boards, instant messaging, and more … all in one tightly integrated server package. Unlike other open source groupware systems, all of Citadel’s data stores are built-in. All that tedious mucking about with dependencies and config files is a thing of the past.
  • High-performance, multiprotocol, multithreaded server engine
  • Wiki and blog engines built in. Citadel is a collaboration server and a content management system!
  • Web browser, telnet/SSH, local client software accessible
  • Standards-compliant e-mail built in: IMAP, POP3, ESMTP
  • Group calendaring and scheduling (WebDAV, GroupDAV, and Kolab-1 compatible)
  • Built-in listserv (mailing list server)
  • Integrated server-side mail sorting and filtering. Users can choose between an easy-to-use web based rules editor, or the power of writing complex scripts using the industry standard Sieve language.
  • Support for push e-mail and mobile devices
  • Database-driven, single-instance message store
  • Built-in full text index for fast searching
  • Authenticated SMTP for remote email submission
  • Multiple domain support
  • Built-in integration with perimiter email filtering technologies such as Realtime Blackhole Lists (RBL’s), SpamAssassin, and ClamAV antivirus
  • Server-to-server replication. Users in any number of domains can be spread out across any number of Citadel servers, allowing you to put data where you need it, and enabling infinite horizontal scalability.
  • Web-based access to email, calendars, and everything else through a powerful AJAX-style front end
  • Very strong support for “public folders” and message forums.
  • Built-in instant messenger service
  • SSL/TLS encryption for all protocols
  • Citadel is true open source software. Unlike other groupware servers, it isn’t a cut-down version of an expensive proprietary “pro” version. We make our very best work available to everyone on the same terms. 100% of our code is covered by the GNU General Public License (GPL3).

Ach ja: Jabber bzw. XMPP kann Citadel auch! Zumindest in Szenarien mit maximal einigen hundert Jabbern-Nutzern kann so durchaus ein ejabberd oder ein Openfire Server wegfallen.

Nachfolgend zeige ich kurz auf, wie sich Citadel easy auf einem Ubuntu 12.10 Server installieren lässt. Sollte zuvor bereits ein anderer MTA installiert worden sein, so sollte dieser vorher entfernt werden!

apt-get install citadel-server citadel-mta citadel-webcit

Direkt darauf fragt die Citadel-Installationsroutine ein paar Dinge per Blockgrafik ab. Die erste Antwort lautet für gewöhnlich 0.0.0.0, danach wählt man die ‘Internal Authentication’. Schließlich setzt man passende Ports für den Zugriff per Browser. Damit es keine Konflikte mit einem bereits auf dem Server laufenden Nginx oder Apache gibt, wählt man HTTP und HTTPS Ports wie z.B. 8404 und 468 (die man sich dann auch bitte notiert und an seine Groupware- bzw. Webmail-Nutzer weitergibt).

Das war es eigentlich schon auf der Kommandozeile. Der Rest passiert über den Browser.Sollte die Geschichte über Browser noch nicht gehen, weil die Parameter für webcit (etwa die Portnummern) aus irgendeinem Grund nicht hinterlegt wurden, dann öffnet kurz die Datei /etc/default/webcit und macht die entsprechenden Anpassungen.

Man ruft im Browser (in diesem Beispiel) http://beispiel-domain.xyz:8404/webcit/ auf und erledigt den Rest wie die Einbringung der eigenen Domains und Einrichtung der Mailnutzer auf die bequeme Tour.

In Verwaltung>Globale Konfiguration>Systemvorgaben bearbeiten unter Allgemein den vollqualifizierten Domänennamen eingeben (etwa: beispiel-domain.xyz). Im übernächsten Karteireiter Netzwerk könnt Ihr ganz unten den Port für den Jabber-Server bestimmt oder ihn mit dem Wert -1 abschalten. Macht bloß kein Häkchen beim Eintrag Nicht authentifizierten SMTP clients erlauben die Domain dieser Citadel- Installation zu verwenden. Das wollt Ihr wirklich nicht. Es sei denn natürlich, Euer Server soll Spamschleuder spielen.

Dann bitte n Verwaltung>Globale Konfiguration>Domänennamens- und Internetmail-Konfiguration in der Schreibweise domain.xyz die gewünschten Internetdomains eintragen, damit Citadel eine Ahnung bekommt, wo es lauschen soll.

Einzelne Mail-Nutzer (und zugleich mögliche Nutzer der Webfunktionalität von Citadel) werden unter Verwaltung>Globale Konfiguration>Benutzer verwalten>Benutzer bearbeiten/löschen/anlegen eingebracht. Dort wählt man einen Nutzernamen, das Passwort und setzt – ganz wichtig – ein Häkchen bei Erlaubnis Internet-EMail zu senden.

Dann geht man für den selben Nutzer noch einmal nach Verwaltung>Globale Konfiguration>Benutzer verwalten>Benutzer bearbeiten/löschen/anlegen, wählt in der rechten Nutzerliste seinen neuen Eintrag und klickt dann auf den rechten Button Edit address book entry. Die entscheidende Eintragung zu diesem Zeitpunkt ist das Feld Haupt-EMailadresse weiter unten. Also z.B. einstein@beispiel-domain.xyz. Dann noch die Änderungen mit dem entsprechenden Button übernehmen und fertig.

An seine Account-Inhaber gibt man schlicht die gewählten Accountnamen weiter, zusammen mit den Passwörtern und den Verweis auf mail.beispiel-domain.xyz als Adresse für den POP und den SMTP Server. Die Nutzer können sich mit ihren Login-Daten auch selbst in WebCit einloggen und dort z.B. das Passwort ändern (die Änderung am Mail-Client dann nicht vergessen) oder die Groupware-Funktionalität nutzen.

Viel Spaß mit Citadel. Es macht das Administrieren ein ganzes Stück leichter!

Previous Article

Star Citizen – Die Wiederbelebung eines verloren geglaubten Genres

Next Article

Das Chenbro SK33502 Hot-Swap Storage Kit