Cyrus-IMAP
Zur Konfiguration von Cyrus-IMAP dient die Datei »/etc/imapd.conf« (siehe Listing 6). Die Zeile 4 ist auskommentiert, um zu verhindern, dass Admins sich von außen einloggen. Um lokalen Admin-Zugriff zu erlauben, legt man eine gleichlautende Datei »/etc /imapd-local.conf« zusätzlich an und entfernt darin das Kommentarzeichen in Zeile 4. In Zeile 8 muss der vollständige Hostname des Servers stehen.
Zeile 21 legt fest, auf welche Art Cyrus die Benutzernamen bilden soll. Ist die Zeile auskommentiert oder der Wert auf »no« gesetzt, nummeriert es die User einfach durch. Alternativ lassen sich die Namen aber auch nach dem Schema »user.domain.tld« zusammensetzen. Soll später ein Webmail-Frontend wie Squirrelmail[11] zum Einsatz kommen, darf der Wert nicht auf »yes« stehen. Andernfalls kann Squirrelmail verschiedene Mailordner nicht anlegen.
Für die TLS/SSL-Verschlüsselung legt der Admin als Nächstes ein Zertifikat an (Listing 7). Das ist allerdings von keiner anerkannten Zertifizierungsstelle unterzeichnet. Manche Mailclients zeigen daher eine Warnung an, die man jedoch ignorieren kann. Das Zertifikat dient ja nicht zur Identifizierung des Servers, sondern zur Verschlüsselung. Wer möchte, kann aber auch den Fingerprint des Zertifikats auf seiner Website veröffentlichen, damit die Benutzer es überprüfen können.
Die Datei »/etc/cyrus.conf« steuert den Master-Prozess von Cyrus. Sie legt fest, in welchen Situationen der IMAP-Daemon welche Konfigurationsdatei verwenden soll. Hier erfolgt auch die erwähnte Unterscheidung zwischen lokalem Zugriff, der auch dem Admin-User »cyrus« erlaubt ist, und dem Zugriff von außen. In Listing 8 muss die IP-Adresse 192.168.0.1 durch die externe IP-Adresse des Servers ersetzt werden. Außerdem ist wichtig, dass die Zeile »lmtpunix« den richtigen Pfad enthält.
Nun kann der Admin den SASL- und IMAP-Daemon starten. Mit dem Befehl
saslpasswd2 -c cyrus
legt er den ersten IMAP-Nutzer an, den Web-cyradm später beim Zugriff auf Cyrus-IMAP verwendet. Bei der Passwortanfrage »saslpasswd2« sollte er das gleiche Passwort angeben, das er vorher in der letzten Zeile von »create_mysql.sql« eingetragen hat. Mit dem Aufruf von »cyradm« lässt sich das Passwort auch gleich ausprobieren. »cyradm« authentifiziert gegen den SASL- und IMAP-Daemon, die also beide laufen müssen:
cyradm --user cyrus --server localhost --auth plain IMAP Password: localhost>
Im letzten Konfigurationsschritt richtet der Administrator Web-cyradm ein. In dem Unterverzeichnis »config« von Web-cyradm liegt bereits eine allgemeine Konfigurationsdatei »conf.php.dist«, die er in »conf.php« umbenennt. In ihr legt er jetzt die Angaben für das Einloggen beim Cyrus-IMAP-Server fest. Zurzeit kann Web-cyradm nicht über eine verschlüsselte Verbindung auf den IMAP-Server zugreifen. Wenn beide Systeme aber auf demselben Server laufen, ist dies kein Problem mehr. Anschließend wird die Datenbankverbindung in der Datei angegeben.
Web-cyradm bietet über die Variable »$CRYPT« mehrere Möglichkeiten der Passwortverschlüsselung. Der sinnvollste Wert hierfür ist »crypt«. Dann verwendet Web-cyradm die gleiche Verschlüsselung wie das Shadow-Passwortsystem. Als Letztes bestimmt der Administrator, wie Web-cyradm die Nutzernamen vergeben soll. Wer bei der Einrichtung der »/etc/imapd.conf« den Wert »unixhierarchysep« auf »yes« gesetzt hat, sollte nun die Variable »DOMAIN_AS_PREFIX« auf »1« setzen.
Los geht's
Die Konfiguration ist abgeschlossen, nun lassen sich MySQL, Apache, Postfix, Cyrus-IMAP und der SASL-Daemon über die Skripte in »/etc/init.d« starten. Der Befehl »netstat -an | grep LISTEN« prüft, ob sie korrekt laufen. Die Ports, 25, 80, 110, 143, 993 und 995 sollten von außen erreichbar sein, Port 3306 dagegen möglichst nur vom Server selbst, also über 127.0.0.1. Sieht alles gut aus, startet der Admin als Nächstes einen Browser und ruft die Web-cyradm-Einstiegsseite auf. Dort loggt er sich als »admin« mit dem zuvor in »create_mysql .sql« gesetzten Passwort ein.
Anschließend lassen sich hier nach Belieben Domains und zugehörige E-Mail-Adressen konfigurieren (Abbildung 2 und 3). Auch für die Weiterleitungen ist Web-cyradm zuständig. Beim Anlegen der Domains ist darauf zu achten, dass diese auch tatsächlich zu dem jeweiligen Server gehören. Wer nur testen will, trägt die Domains kurzfristig in »/etc/ hosts« ein, damit eventuelle Testmails nichts nach draußen gelangen.
Wer den Wartungsaufwand für den Admin so gering wie möglich halten möchte, richtet weitere so genannte Domain-Administratoren ein: Diese dürfen eine oder mehrere Domains komplett verwalten, aber keine neuen Domains und User einrichten.
Abbildung 2: Der Dialog für die Einrichtung einer neuen Domain. Das Frontend Web-cyradm macht es möglich, Domains komfortabel zu verwalten.
Diesen Artikel als PDF kaufen
Als digitales Abo
Weitere Produkte im Medialinx Shop »
Versandartikel
Onlineartikel
Alle Rezensionen aus dem Linux-Magazin
- Buecher/07 Bücher über 3-D-Programmierung sowie die Sprache Dart
- Buecher/06 Bücher über Map-Reduce und über die Sprache Erlang
- Buecher/05 Bücher über Scala und über Suchmaschinen-Optimierung
- Buecher/04 Bücher über Metasploit sowie über Erlang/OTP
- Buecher/03 Bücher über die LPI-Level-2-Zertifizierung
- Buecher/02 Bücher über Node.js und über nebenläufige Programmierung
- Buecher/01 Bücher über Linux-HA sowie über PHP-Webprogrammierung
- Buecher/12 Bücher über HTML-5-Apps sowie Computer Vision mit Python
- Buecher/11 Bücher über Statistik sowie über C++-Metaprogrammierung
- Buecher/10 Bücher zu PHP-Webbots sowie zur Emacs-Programmierung
Insecurity Bulletin
Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...





