Dies ist eine alte Version des Dokuments!


Anbindung unseres MTAs Postfix 2.11 an einem Backend-Mailserver (Dovecot-IMAP-Server) unter CentOS7

Postfix-Logo In der Regel werden wir hinter unserem eigentlichen SMTP-Mailserver ein Backend System, so z.B. einen Dovecot-Server, bereithalten, von welchem unsere User ihre elektronische Post abholen. Damit unser Mailserver Postfix, der die Nachrichten von fremden Mailserver annimmt, bewertet und prüft, auch an unser internes Postoffice weiterleiten kann, sind noch Ergänzungen an der Konfiguration des Postfix-Mailservers notwendig.

Hier kommt es nun im Detail darauf an, auf welchen Hosts unser Postfix-SMTP-Server und wo der Dovecot-IMAP-Server betrieben wird.

Will man „nur“ einen kleinen Mailserver betreiben, bietet sich augenscheinlich als praktikabelste und einfachste Lösung die Methode via dovecot-lda.

In der Postfix-Konfigurationsdatei /etc/postfix/master.cf tragen wir am Ende folgende Zeilen nach.

 # vim /etc/postfix/master.cf
...
 
# ====================================================================
#
# Django : 2014-11-04 lovecot-lda aktiviert
dovecot     unix  -       n       n       -       5       pipe
  flags=DRhu user=vmail argv=/usr/libexec/dovecot/dovecot-lda -f ${sender} -d ${mailbox}
#
# ====================================================================
 
...

In der /etc/postfix/main.cf tragen wir in der Section ROUTING _ WEITERLEITEN VON NACHRICHTEN AN DAS EIGENTLICHE ZIEL noch folgende Optionen ein.

# vim /etc/postfix/main.cf
...
 
################################################################################
## ROUTING _ WEITERLEITEN VON NACHRICHTEN AN DAS EIGENTLICHE ZIEL
#
# Django : 2014-10-15 - Relayhost: Alle Nachrichten werden an den Relayhost
#          smtp-out.dmz.nausch.org gesendet.
# default: relayhost =
# relayhost = [smtp-out.dmz.nausch.org]
 
# Django : 2014-10-15 - Backup-Relayhost: Sollte der $relayhost nicht erreichbar
#          sein, soll sich unser MTA an den backup-relayhost 
#          smtp-backup.dmz.nausch.org senden
# default: smtp_fallback_relay = $fallback_relay 
# smtp_fallback_relay = [smtp-backup.dmz.nausch.org]
 
# Django : 2014-10-15 - Relay Domains: Postfix als eingehendes Mailrelay vor 
#          einem anderen Server
# default: relay_domains = $mydestination 
relay_domains = btree:/etc/postfix/relay_domains
 
# Django : 2014-10-15 - Nachrichten für eine bestimmte Richtung sollen
#          abweichend von den MX-Definitionen im DNS an dedizierte Ziele
#          geroutet/weitergeleitet werden.
# default: transport_maps =
transport_maps = btree:/etc/postfix/transport_maps
 
# Django : 2014-11-04 - Lokale Zustellung via pipe an den Dienst dovecot-lda zu 
#          unserem Dovecot-IMAP/POP3-Server 
# default: mailbox_transport =
#          dovecot_destination_recipient_limit = 1
mailbox_transport = cyrus
 
...

Damit nun unser Postfix SMTP-Server auch diese Zustellungsart verwendet kann, benötigen wir noch einen Eintrag in der transport-Tabelle. Diesen fürgen wir nun noch ans Ende der Datei ein.

 # vim /etc/postfix/transport_maps
/etc/postfix/transport_maps
# Kapitel 5.2.5 transport-Tabelle: Abweichende Zustellung
# Lookup-Tabelle zum Aktivieren einer alternativen Mailrouting bei der
# Zustellung an einen weiteren Mailserver. Nach dem Ändern und/oder
# Erweitern der Tabelle, muß noch mittels:
#               $ postmap /etc/postfix/transport_map
#
# die zugehörige Datenbank erzeugt werden.
#
# Alle eMails, die an Subdomains von nausch.org gerichtet sind
# ("." am Anfang der Zeile!) werden an den/die Mailserver von
# intra.nausch.org (MX-Records) weitergeleitet. (keine "["-Klammern!)
#.nausch.org                            smtp:intra.nausch.org
 
# Alle eMails, die an die Domain tachtler.net gerichtet sind, werden an 
# den bzw. die Mailserver der Mail-Domäne t-offline.de (MX-Records) 
# weitergeleitet. (keine "["-Klammern!) 
# tachtler.net                          smtp:t-offline.de
 
# Mails an backup.nausch.org werden an den Mailserver (A-Record) auf Port 25
# mit Namen mail.intra.nausch.org geschickt.
#backup.nausch.org                      smtp:[mail.intra.nausch.org]:25
 
# Django : 2013-02-21
# eMails an den Fax-Server an den Host vml000020 weiterleiten
fax.nausch.org                          smtp:[10.0.0.20]:25
# eMails an den Key-Server sollen an den Host vml000030 weitergeleitet
# werden.
keyserver.nausch.org                    smtp:[10.0.0.30]:25
 
# Django : 2013-02-22
# eMails an den Mailinglisten-Server an das Programm mailman weiterreichen
#lists.nausch.org                       mailman:
 
# Django : 2014-11-04
# eMails der Maildomäne nausch.org an das Programm dovecot-lda weiterleiten
nausch.org                              dovecot:

WICHTIG:

Diese Art der Anbindung ist jedoch nicht zu empfehlen und zwar aus folgenden drei Gründen!

  1. Der Mailtransport ist nicht sehr performant, da für jede Mailzustellung ein separater Prozess gestartet werden.
  2. Sind eMails mit mehreren Empfängern an den Dovecot-Server zu übergeben, so muss diese eMail entsprechend oft einzeln an jeden Empfänger übergeben werden.
  3. Eine dynamische Empfängervalidierung ist bei dovecot-lda nicht möglich!

Darüber hinaus ist bei einer eventuell späteren Migration des Dovecot-IMAP-Servers auf einen separaten Server der Umprogrammierungsaufwand ungemein größer, als bei der nachfolgend beschriebenen Anbindungsvariante via LMTP. Also empfiehlt es sich lieber gleich, es vernünftig und richtig zu machen! ;)

FIXME

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
  • centos/mail_c7/mta_6.1415118404.txt.gz
  • Zuletzt geändert: 04.11.2014 16:26.
  • von django