Ergänzend zum ersten Prism-Break-Artikel  möchte ich hier eine weitere sehr praktische Ergänzung vorstellen: Das sender dependent SMTP-Relaying.

 

Was soll hier erreicht werden?

  1. eMail an einen lokalen Benutzer soll immer lokal ausgeliefert werden und nicht den Server verlassen.
  2. Falsch adressierte eMail an eine der externen Mailadressen eines lokalen Benutzers sollen ebenfalls lokal ausgeliefert werden und nicht den Server verlassen.
  3. eMail an einen externen Benutzer soll über den eMail-Account des Nutzers bei einem externen Provider versendet werden. Dabei soll natürlich die interne eMail-Adresse in die des externen eMail-Accounts umgeschrieben werden.

Der Vorteil der Lösung liegt auf der Hand. Die Nutzer müssen beim Versenden von eMail nicht mehr darauf achten, den richtigen SMTP-Server auszuwählen und die eMail wird automatisch richtig zugestellt und adressiert. Kommen wir zur Umsetzung:

Datei main.cf:

<br />
# RSP: outgoing mail redirections<br />
recipient_canonical_maps = hash:/etc/postfix/recipient_canonical</p>
<p># RSP: sender dependent authentication<br />
smtp_sender_dependent_authentication = yes<br />
smtp_sasl_auth_enable = yes<br />
smtp_tls_security_level = encrypt<br />
smtp_sasl_security_options = noanonymous, noplaintext<br />
smtp_sasl_tls_security_options = noanonymous<br />
smtp_connection_cache_on_demand = no</p>
<p># RSP: credentials and SMTP servers for relay-mail account<br />
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password<br />
sender_dependent_relayhost_maps = hash:/etc/postfix/sender_dependent</p>
<p># RSP: rewrite rules for sender addresses<br />
smtp_generic_maps = hash:/etc/postfix/generic<br />

Datei recipient_canonical – Umleitung bekannter externer Adressen auf interne Postfächer:

<br />
known_external_user@mail-address.de  user@internal.domain<br />

Datei generic – Ersetzungstabelle interner Mailadressen für externe Zustellung:

<br />
user@internal.domain external@mail-address.de<br />

Datei sasl_password – Credentials für externe Zustellung:

<br />
user@internal.domain ExternerBenutzername:ExternesPasswort<br />

Datei sender_dependent – Zuordnung von internen Usernamen zu externen SMTP-Servern:

<br />
user@internal.domain smtp.externer-server.domain<br />

Die erzeugten Dateien müssen vor der Benutzung via „postmap“-Kommando in *.db-Dateien umgewandelt werden.

1 thought on “Prism Break: Privater eMail-Server – intelligenter SMTP-Server

  1. Für den weit verbreiteten GMX-Mailserver muss mail.gmx.net verwendet werden. Der Server unterstützt leider nur Plaintext-Passwörter. Die smtp_sasl_security_options muss daher so aussehen:

    smtp_sasl_security_options = noanonymous

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Name *

16 + 13 =