Einrichten von Exim zum Weiterleiten von E-Mails

10

Ich versuche, Exim für eine neue CentOS-Installation so einzurichten, dass E-Mails für eine Sammlung bestimmter Adressen empfangen und an eine andere Adresse weitergeleitet werden. Der Empfang von E-Mails von [email protected] wird beispielsweise an [email protected] weitergeleitet.

Ich denke, das sollte ziemlich einfach sein ... Ich hatte das schon einmal mit Sendmail unter Verwendung von virtusertable- gibt es etwas Ähnliches, das ich mit Exim machen kann?

Ich möchte auch E-Mails senden können, aber nur für E-Mails, die vom lokalen Computer gesendet werden (dh von Anwendungen, die auf dem Server ausgeführt werden). Ich benötige / möchte keinen öffentlich verfügbaren SMTP-Server.

Gibt es andere Einstellungen, die ich berücksichtigen sollte, um sicherzustellen, dass der Mailserver sicher ist? Ich gehe davon aus, dass es sofort sicher ist.

Vielen Dank.

Joe Freeman
quelle

Antworten:

7

Sie müssen einen Umleitungsrouter verwenden. Lesen Sie die Exim Router-Spezifikation, da sie viele Dinge kann und daher recht komplex werden kann.

Grundsätzlich müssen Sie so etwas einrichten (ungetestet)


sender_redirect:
  driver = redirect
  data = ${lookup{$sender_address}lsearch{/etc/exim4/sender_redirects}}

Erstellen Sie dann eine Datei /etc/exim4/sender_redirects, die die Weiterleitungen in einem durch Zeilentrennzeichen getrennten Format enthält:


[email protected]: [email protected]
Gavin McTaggart
quelle
1
Danke Gavin, das hat mich definitiv in die richtige Richtung gebracht. Ich verwende diese Zeilen: driver = redirect domain = dsearch; / etc / exim / virtual data = $ {lookup {$ local_part} lsearch {/ etc / exim / virtual / $ domain}} wobei 'virtual' ein Verzeichnis ist, das enthält Datei 'example.com' und Zeilen des Formulars: 'me: [email protected]'. Ich musste auch meine 'local_domains' so einstellen, dass sie 'example.com' enthalten (der oben verwendete Trick mit dsearch kann auch hier verwendet werden).
Joe Freeman
5

Eine Variation dessen, was Joe Freeman gesagt hat, ohne dsearch zu verwenden (was mir den unbekannten Lookup-Typ "dsearch" -Fehler gab):

Am Anfang von exim.conf:

#Replace:
domainlist local_domains = lsearch;/etc/virtual/domains
#With:
domainlist local_domains = lsearch;/etc/virtual/domains : lsearch;/etc/virtual/forwarding_domains

Im Abschnitt "Router starten" hinzufügen:

sender_redirect:
    driver = redirect
    domains = lsearch;/etc/virtual/forwarding_domains
    data = ${lookup{$local_part}lsearch{/etc/virtual/forwarding/$domain}}

Fügen Sie in lsearch; / etc / virtual / forwarding_domains Ihre Domains eine pro Zeile hinzu:

example.com

Und erstellen Sie /etc/virtual/forwarding/example.com mit:

me: [email protected]
Marius
quelle
3

Exim4 unterstützt auch .forwardDateien im alten Stil sowie Dateien im Exim-Stil .forward, die mit beginnen # Exim filter. Um beispielsweise Letzteres zu verwenden, um an mein Sicherungskonto weiterzuleiten, während das Original für den POP3-Zugriff in meiner Spool verbleibt:

# Exim filter  <== do not edit or remove this line!

unseen deliver [email protected]

viel einfacher und weniger gefährlich, als als Wurzel im Darm der Exim-Konfiguration herumzuspielen, IMO. Alle Details dazu finden Sie hier .

jcomeau_ictx
quelle