Configuration d'Exim pour transférer le courrier

10

J'essaie de configurer Exim sur une nouvelle installation CentOS afin qu'il reçoive du courrier pour une collection d'adresses données et transfère le courrier respectivement à une autre adresse. Par exemple, la réception de courrier de [email protected] serait transmise à [email protected].

Je pense que cela devrait être assez simple ... J'ai déjà travaillé avec Sendmail, en utilisant le virtusertable- est-ce que je peux faire quelque chose de similaire avec Exim?

J'aimerais également pouvoir envoyer du courrier, mais uniquement pour le courrier envoyé depuis la machine locale (c'est-à-dire depuis des applications s'exécutant sur le serveur) - Je n'ai pas besoin / je veux un serveur SMTP accessible au public.

Existe-t-il d'autres paramètres à prendre en compte pour garantir la sécurité du serveur de messagerie? (c.-à-d., empêcher le relais) Je suppose qu'il sera sécurisé hors de la boîte.

Merci.

Joe Freeman
la source

Réponses:

7

Vous devrez utiliser un routeur de redirection. Lisez la spécification du routeur Exim, car elle peut faire beaucoup de choses et peut donc devenir assez complexe.

Fondamentalement, vous devrez configurer quelque chose comme ça (non testé)


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

Créez ensuite un fichier /etc/exim4/sender_redirectscontenant les redirections dans un format délimité par deux points, comme ceci:


[email protected]: [email protected]
Gavin McTaggart
la source
1
Merci Gavin, cela m'a définitivement mis dans la bonne direction. J'utilise ces lignes: driver = redirect domain = dsearch; / etc / exim / virtual data = $ {lookup {$ local_part} lsearch {/ etc / exim / virtual / $ domain}} où 'virtual' est un répertoire contenant fichier 'example.com', et lignes du formulaire: 'me: [email protected]'. J'ai également dû définir mes 'local_domains' pour inclure 'example.com' (l'astuce avec dsearch utilisée ci-dessus peut également être utilisée ici).
Joe Freeman
5

Une variation de ce que Joe Freeman a dit, sans utiliser dsearch (ce qui m'a donné une erreur de type de recherche inconnue "dsearch"):

Au début de exim.conf:

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

Dans la section "début des routeurs", ajoutez:

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

Dans lsearch; / etc / virtual / forwarding_domains, ajoutez vos domaines un par ligne:

example.com

Et créez /etc/virtual/forwarding/example.com contenant:

me: [email protected]
Marius
la source
3

Exim4 prend également en charge les .forwardfichiers de style ancien , ainsi que les .forwardfichiers de style Exim qui commencent par # Exim filter. par exemple, pour utiliser ce dernier pour transférer vers mon compte de sauvegarde tout en conservant l'original dans mon spool pour l'accès POP3:

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

unseen deliver [email protected]

beaucoup plus simple et moins dangereux que de faire des singes en tant que root dans les entrailles de la configuration Exim, IMO. tous les détails à ce sujet sont ici .

jcomeau_ictx
la source