Exim4与多个网站

我在Ubuntu服务器12.04上,我设法按照本指南安装和configurationExim4。

我将我的主机名设置为“multiformeingegno.com”,我的/ etc / hosts如下所示:

127.0.0.1 localhost 127.0.1.1 multiformeingegno IPv4 ADDRESS multiformeingegno.com multiformeingegno IPv6 ADDRESS multiformeingegno.com multiformeingegno 

我可以通过PHP发送邮件就好了。 我有2个问题。

  1. 我在一个VPS和我的主机就像xxxxx.server.topcloud.it,我想隐藏这个地址从我发送的邮件! 我可以从标签查看它:Received:from multiformeingegno.com(xxxxxx.server.topcloud.it。[IPv4 ADDRESS])有没有办法只显示“multiformeingegno.com”为“收到”?

  2. 在我的VPS我承载多个网站。 如何根据“正在使用”域来更改我的主机名/ fqdn(如果我使用条款不正确,请更正我的名称)? 例如,我在我的网站multiformeingegno.com上有一个联系表单,在另一个网站example.com上有另一个联系表单。 我怎么能根据实际发送邮件的网站有“返回path”,“收到”等等改变? 这可能吗?

  1. 该标题是由从您的服务器收到消息的MTA添加的。 它通过对您用来连接的IP地址进行反向查找来获取topcloud.it主机名。 更改此主机名的唯一方法是让您的主机提供商更改IP地址的PTRlogging。
  2. 我不知道有关Exim的具体情况,但是有一个邮件服务器根据发送的邮件更改其声明的主机名是不常见的,所以我怀疑你可以这样做。
  3. 返回path由发件人地址确定,所以这应该自动发生。

我有一个虚拟主机托pipe在Ubuntu 14.04多个域名,并希望确保电子邮件标题发送只包括IP或虚拟主机的FQDN。

我首先从Linode的指南开始。 之后我执行了以下步骤:

创build一个文件 – / etc / exim4 / mailhelo并使用domain.com的语法:helodomain.com产生类似于:

 domain1.com: domain1.com domain2.com: domain2.com *: defaultdomain.com 

创build一个文件 – /etc/exim4/conf.d/01_custom_transport并插入添加如下内容:

 REMOTE_SMTP_HELO_DATA = ${lookup{$sender_address_domain}lsearch{/etc/exim4/mailhelo}{$value}{$primary_hostname}} 

编辑文件 – /etc/exim4/conf.d/30_exim4-config_remote_smtp并将以下内容添加到文件末尾:

 headers_remove = "received" 

执行

 update-exim4.conf service exim4 restart 

查看网页表单电子邮件的标题,没有证据显示我的VPS主机名。 不要忘记用你的DNS提供商为虚拟主机创build一个SPFlogging。

  1. 由于mgorven描述的原因,您不能隐藏发送的电子邮件地址:它是由收到电子邮件的邮件服务器添加的,而不是由您的邮件服务器添加的。
  2. 您可以configurationexim以更改其出站名称(即在EHLO / HELO中使用的名称),如果您有多个外部IP地址,则可以configurationexim以更改在传输中使用的出站IP地址。

样品运输:

 remote_smtp_forwarder: debug_print = "Transport: remote_smtp_forwarder for $local_part@$domain" driver = smtp max_rcpt = 10 hosts_max_try = 2 interface = 10.1.2.141 helo_data = "out.forwarder.iv.ivenue.com" 

在这个例子中,10.1.2.141是NAT出站的,并将从out.forwarder.iv.ivenue.com(208.89.136.23)连接到你的邮件服务器,它将发出一个“ EHLO out.forwarder.iv.ivenue .com “到您的邮件服务器。 我有我的硬编码到一个特定的IP地址,但你也可以使用查找来确定接口和helo_data如果你想。 这取决于你需要多less复杂性。