Comment avoir exim sur le serveur avec plusieurs domaines envoie chaque mail à partir de son propre domaine, pas le nom d'hôte du serveur?

Supposons que j'ai un VPS avec plusieurs adresses IP dédiées et plusieurs domaines:

  • domain-a.com est le 11.11.11.11 , mx est mail.domain-a.com
  • domain-b.com est le 22.22.22.22 , mx est mail.domain-b.com
  • domain-c.com est le 33.33.33.33 , mx est mail.domain-c.com

domain-a.com est le principal domaine et le nom d'hôte du serveur est server.domain-a.com

Tout semble être bien jusqu'à ce que je trouve que les courriers électroniques SMTP envoyés à l'aide d'Exim 4.72 rebondissent, échouent ou sont signalés comme spam à de nombreux domaines. Après avoir creusé, je découvre qu'il y a des inadéquations: pour les courriels de tous les domaines, le HELO provient de server.domain-a.com .


Par exemple, je vois cela dans les en-têtes sur les courriels que j'envoie au gmail:

 Received: from server.domain-a.com (mail.domain-c.com. [33.33.33.33]) 

Et un service de test de courrier électronique tel que https://www.mail-tester.com/ me dit:

Votre DNS inverse ne correspond pas à votre domaine d'envoi.

Votre adresse IP 33.33.33.33 est associée au domaine mail.domain-c.com.

Néanmoins, votre message semble être envoyé par server.domain-a.com.

Vous voudrez peut-être modifier l'enregistrement DNS de votre pointeur (type PTR) et le nom d'hôte de votre serveur à la même valeur.

Voici les valeurs testées pour cette vérification:

 IP: 33.33.33.33 HELO: server.domain-a.com rDNS: mail.domain-c.com 

Mais évidemment, je ne peux pas pointer server.domain-a.com sur les domaines a, b et c à la fois, et de toute façon, je ne veux pas nécessairement que domain-c.com envoie via domain-a.com – supposons Ce sont des entreprises indépendantes qui se trouvent être hébergées sur le même serveur.

Comment puis-je configurer exim pour envoyer chaque email à partir de son propre domaine, et à HELO partir du domaine du serveur de messagerie, et non le nom d'hôte principal du serveur?

Pour que les en-têtes ressemblent à ceci:

 Received: from mail.domain-c.com (mail.domain-c.com. [33.33.33.33]) 

Et les résultats des tests rapportent ceci:

 IP: 33.33.33.33 HELO: mail.domain-c.com rDNS: mail.domain-c.com 

J'ai trouvé une solution à cette même question pour les adresses IP, c'est pourquoi j'envoie le courrier à partir de différentes adresses IP, alors je suis sûr qu'il doit y avoir une solution similaire pour les domaines.

Dans ma recherche, tout ce que j'ai pu trouver était cette solution, mais cela dépend de cP *** l et W * M et d'un fichier /etc/mailhelo qui n'existe que dans cP *** l. C'est clairement possible, mais cette solution dépend de certains derrière les scènes gubbins cuits dans cP *** l, que je n'utilise pas.


Le système d'exploitation est CentOS s'il est pertinent.

One Solution collect form web for “Comment avoir exim sur le serveur avec plusieurs domaines envoie chaque mail à partir de son propre domaine, pas le nom d'hôte du serveur?”

Eh bien, c'était plus facile que prévu.

J'ai remarqué que mon fichier de paramètres exim ( /etc/exim/exim.conf ) contenait cette ligne commentée:

 #helo_data = $sender_address_domain 

En le dérangant, le HELO / de devenir le bon domaine, il manque simplement le mail. préfixe.


Alors, ce qui a fonctionné pour moi était:

(1) Sous remote_smtp: dans mon fichier de configuration exim, qui sur mon système était situé dans /etc/exim/exim.conf , en ajoutant la ligne suivante:

 helo_data = "mail.${sender_address_domain}" 

(2) Redémarrer exim (sur mon système, c'est-à-dire le service exim restart )

(3) C'est tout


Après avoir effectué cette modification, les services tels que Mail Tester ne rencontrent aucun problème et cette section de mes en-têtes de messagerie semble normale:

 Received: from mail.domain-c.com (mail.domain-c.com. [33.33.33.33]) 

Le nom d'hôte apparaît toujours plus tard dans les en-têtes de courrier électronique; J'ai posé une question distincte à ce sujet .

  • utiliser Gmail pour envoyer des mails à partir de votre php?
  • Exchange 2010 cesse de répondre périodiquement aux events SMTP avec erreur 421 4.4.1 La connection a expiré
  • Comportement d'emballage de ligne de boîte de réception Unix
  • Postfix SASL authentification SMTP
  • Traitement de l'attaque de command invalide SMTP
  • Relais ouvert pour les IP internes
  • raison: 403 4.7.0 Le coup de main TLS a échoué
  • Qu'est-ce que le statut SMTP 250 BONHAM COOLED BY FIRE signifie?
  • Comment puis-je informer mon server de permettre des connections via un client de messagerie?
  • Je souhaite que Lotus Domino n'envoie qu'un courrier électronique aux users qui sont à la fois destinataires et membres d'un groupe de lotus cc'ed
  • Configuration des loggings SPF sur un server dédié
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.