[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mail-relay fuer Systeme mit ausschliesslich FQDN aus Domain uugrn.lan


Moin Raphael,

Am 06.10.2016 um 21:17 schrieb Raphael Eiselstein:
> Meine Traegheit verbunden mit der Tatsache, dass sendmail seit 100 Jahren
> der Default-MTA bei FreeBSD ist und das Setup seit vielen Jahren
> eigentlich prima funktioniert hat.
> 
> Natuerlich wuerde ich eine Loesung innerhalb von sendmail bevorzugen, weil
> ich dann nicht mehr viel tun muesste.
Kommt mir in vielen Teilen bekannt vor. So haenge ich auch noch bei Apache,
weil ich einfach bisher weder Zeit noch wirklich die Motivation hatte nginx
mal zu testen geschweige denn darauf umzustellen ;-)
Ich nutze seit 15 Jahren eigentlich nur noch Postfix (bringt auch ein sendmail
mit) und habe nur gelegentlich dienstlich mit sendmail auf UNIX-Systemen (AIX,
Solaris) zu tun.

> D.h. Mails von root@xxxxxxxxxxxxxxx nach *extern* wuerden mit einem
> validen Envelope From verschickt und Antworten bzw.
> Zustell-Notifikationen ("MAILER-DAEMON") wuerden auch den Weg zurueck
> finden in das jeweilige Jail, hier zB mysql.uugrn.lan?
Genau das heisst es. Ich mach das vor allem fuer die Mails von Daemons (Absender
meist user@xxxxxxxxxxxxxxx) eine Stufe weiter vorne auf den Hosts direkt, aber
es geht auch zentral auf dem Relayserver.
Postfix nimmt die Mail an (ob nun lokal ueber sendmail oder per smtp) und
durchlaeuft sein Lookup-Tables. Dabei werden dann die Envelope-Rewrites
vorgenommen (wie z. B. Aliase, virtuelle Aliase, Sender und Empfaenger) und
danach die Mail verarbeitet - je nachdem, ob Postfix fuer die Domains zustaendig
ist ($relay_domains => lokale Zustellung) oder nicht ($relayhost =>
weiterleitung). Dies kann allerdings durch "transport rules" wiederum
ueberschrieben werden.

Beispiel:
mysql Daemon auf Host hugo unter User mysql: Origainal-Absender
mysql@xxxxxxxxxxxxxx
Apache Daemon auf Host egon unter User www: Origainal-Absender
www@xxxxxxxxxxxxxx
Empfaenger der Mails: rabe@xxxxxxxxx (verwaltet auf mail.sigsys.de)

Vereinfacht dargestellt funktioniert das so:

1)  Umschreibung der Absender-Adressen (Envelope From und Header From):

Eintrag in /etc/postfix/main.cf:
sender_canonical_maps = hash:/etc/postfix/maps/canonical_sender

Eintraege in /etc/postfix/maps/canonical_sender:
mysql@xxxxxxxxxxxxxx    hugo-mysql@xxxxxxxxx
www@xxxxxxxxxxxxxx      egon-www@xxxxxxxxx

2) Anpassung des Ziels (falls Relayhost zwar fuer die Domain zustaendig ist und
die Adresse aber anderswo verwaltet wird bzw. hingeliefert werden soll).

Eintrag in /etc/postfix/main.cf:
transport_maps = hash:/etc/postfix/maps/transport

Eintrag in /etc/postfix/maps/transport:
rabe@xxxxxxxxx        smtp:mail.sigsys.de

3) Da die Absender-Adresse (From) im Envelope und im Header umgeschrieben wird
gehen sowohl Zustell-Notifikationen ("MAILER-DAEMON") als auch "normale" Mails
an die neuen Absender-Adressen zurueck - also an den MX-Record fuer uugrn.org.
Damit die Mails dann an die Jails zurueck gehen muss nun die Empfaenger-Adresse
der Antworten wieder zurueck geschrieben (Envelope To und Header To) - also
umgekehrt wie oben bei Punkt 1.
Wenn man die Antworten nicht auf dem Jail, sondern in einem externen Postfach
haben will, dann schreibt man eben auf die externe Adresse um (s. rabe unten).

Eintrag in /etc/postfix/main.cf:
recipient_canonical_maps = hash:/etc/postfix/maps/canonical_recpipient

Eintraege in /etc/postfix/maps/canonical_recpipient:
hugo-mysql@xxxxxxxxx    mysql@xxxxxxxxxxxxxx
egon-www@xxxxxxxxx www@xxxxxxxxxxxxxx
www@xxxxxxxxxxxxxx      rabe@xxxxxxxxx

4) Sollte die Empaenger-Umschreibung das fuer eine korrekte Weiterleitung nicht
reichen, dann muessten hierfuer evtl. ebenfalls noch transports konfiguriert
werden.

Eintraege in /etc/postfix/maps/transport:
mysql@xxxxxxxxxxxxxx    smtp:[hugo.uugrn.lan]
www@xxxxxxxxxxxxxx      smtp:[egon.uugrn.lan]
(Die Klammern sorgen dafuer, dass nur nach einem A- und nicht nach einem
MX-Record gesucht wird.)

Wie Du direkt siehst sind hierfuer keinerlei zusaetzlichen MX-Records notwendig
und der bestehende fuer uugrn.org ausreichend.

Bei weiteren Fragen einfach fragen ;-)

Gruss Tom

-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/