Im folgenden wird die Anbindung eines externen Mailservers mit Postfix und Dovecot dokumentiert.
Grundidee ist es, einen sicheren, vollwertigen externen Mailserver einzurichten, der allen Benutzern des linuxmuster.net-Servers Email-Adressen zur Verfügung stellt.
Dies ist normalerweise durch den Schulserver nicht gewährleistet. Insbesondere bei wechselnder IP (Dynamische DNS) würde der Server schnell als unsicherer Server/Spam klassifiziert. Zum anderen ist der Betrieb eines sicheren Mailservers nicht trivial, so dass man sich gut überlegen sollte, ob man auf dem Schulserver diesen Dienst im WWW laufen lässt.
Die Installation beginnt mit einem Ubuntu 14.04-Server mit fester IP-Adresse (selbst installiert oder ein fertiges Template des Webhosters.
Zunächst werden die für den Betrieb des Mailservers benötigten Pakete installiert.
Dieser Teil wird im Netz gut dokumentiert, z.B. unter http://www.krizna.com/ubuntu/setup-mail-server-ubuntu-14-04/
Damit der Mailserver auf den linuxmuster.net-Server zugreifen kann, müssen die Zugriffsrechte in der Datei /etc/openldap/slapd.conf
angepasst werden:
access to * # hier kann/sollte stärker eingeschränkt werden by anonymous peername.ip=<IP MAILSERVER> read
Postfix ist der MTA (Mail Transfer Agent), der die Emails für angegebene Domains annimmt.
In unserem Fall prüft Postfix nicht nur lokale Benutzer (virtual_mailbox), sondern zusätzlich, ob die Benutzer in einem angegebenen LDAP-Verzeichnis verfügbar sind.
Für die Anbindung des Mailservers an den LDAP des linuxmuster.net-Servers muss zunächst die Postfix-Konfigurationsdatei /etc/postfix/main.cf
auf dem Mailserver verändert werden:
virtual_mailbox_domains = corvinianum.de virtual_mailbox_base = /home/vmail virtual_mailbox_maps = ldap:/etc/postfix/ldap-mailbox.cf, hash:/etc/postfix/virtual_mailbox virtual_alias_maps = ldap:/etc/postfix/ldap-alias.cf, hash:/etc/postfix/virtual_alias virtual_mailbox_limit = 51200000 virtual_uid_maps = static:1000 virtual_gid_maps = static:1000 virtual_transport = dovecot dovecot_destination_recipient_limit=1
Die beiden ldap-Dateien, auf die hier verwiesen wird, enthalten den Verweis auf den linuxmuster-LDAP:
Sowohl /etc/postfix/ldap-mailbox.cf
als auch /etc/postfix/ldap-alias.cf
enthalten:
server_host = ldaps://<DDNS-HOSTNAME>:636 search_base = dc=linuxmuster,dc=local version = 3
Dovecot ist ein verbreiterer MDA (Mail Delivery Agent) sowie IMAP/POP3-Server und erlaubt den Zugriff auf die Emails. Nachdem Postfix die Emails angenommen und in die Verzeichnisse der Benutzer einsortiert hat, erlaubt Dovecot nach der Authentifizierung über LDAP den Zugriff auf diese Emails.
Zunächst muss in der Datei /etc/dovecot/conf.d/10-auth.conf
die LDAP-Authentifizierung erlaubt werden (Kommentarzeichen entfernen):
!include auth-ldap.conf.ext
Dann wird in der Datei /etc/dovecot/conf.d/auth-ldap.conf.ext
die LDAP-Authentifizierung eingerichtet und auf das Verzeichnis verwiesen, in dem die Mails gespeichert sind:
... passdb { driver = ldap args = /etc/dovecot/dovecot-ldap.conf } userdb { driver = static args = uid=vmail gid=vmail home=/home/vmail/%n allow_all_users=yes }
Hier wird wieder auf die Datei /etc/dovecot/dovecot-ldap.conf
verwiesen, in der erneut auf den linuxmuster.net-LDAP verwiesen wird:
uris = ldaps://<DDNS-HOSTNAME>:636 auth_bind = yes ldap_version = 3 base = dc=linuxmuster,dc=local pass_filter = (&(objectClass=posixAccount)(uid=%u))
Mit dieser Konfiguration haben sämtliche Nutzer des linuxmuster.net-Servers eine Email-Adresse. Email-Adressen können bequem über die Schulkonsole angelegt werden. Auf die Emails wird per IMAP zugegriffen (z.B. von Horde, Owncloud, etc..
Ein weiterer Vorteil ist, dass der Mailserver extern betreut werden kann.
In dieser Konfiguration funktioniert das Email-System nur, wenn der linuxmuster.net-Server erreichbar ist. Insofern sollte die Replikation des LDAP-Baums auf den Mailserver erwogen werden (<DDNS-HOSTNAME> kann dann in den Konfigurationsdateien durch 127.0.0.1 ersetzt werden).
Außerdem werden Emails nicht automatisch gesichert. Allerdings stellen viele Hosting-Anbieter entsprechende Sicherungsfunktionen zur Verfügung.