没有与 exim /etc/mailips 文件等效的控制面板来配置每个域的外发邮件的 IP?

没有与 exim /etc/mailips 文件等效的控制面板来配置每个域的外发邮件的 IP?

我遇到了使用错误 IP 地址发送的 SMTP 邮件问题。

我使用 exim 发送邮件。我发现指引“如何手动配置 Exim 的传出 IP 地址”,建议修改/etc/mailips。这个文件看起来正是我要找的。

不幸的是,我的服务器上不存在该文件。仔细检查后,我认为该文件不是正常 exim 配置的一部分,而是由某个专有控制面板包创建的,以简化 exim 的配置。我在 exim 中找不到任何直接等效文件。

如何在 exim 中配置每个域的外发邮件 IP 地址?

答案1

看起来该文件确实是由某个专有控制面板包创建的。

好消息是,您可以轻松实现自己的功能。Exim 配置可以使用该interface属性来固定 IP 地址。理论上,每个服务器只有一个 IP,但只需编写少量代码即可使其动态化。

这是改编自loginroot文章

  1. 找到你的 exim 配置文件exim.conf。他们建议/etc/exim.conf,我的是在/etc/exim/exim.conf
  2. 创建一个文件来存储域名 - IP 关联。我选择了/etc/exim/domainips,他们更喜欢/etc/virtual/domainips
  3. 像这样填写域名和 IP:

some-domain.com: 123.123.123.123
anotherdomain.org: 98.98.98.98

  1. exim.conf文件中,找到以下部分remote_smtp:
  2. interface = some.ip.add.ress如果下面有一行remote_smtp:,请将其删除。
  3. 使用之前的文件名添加一行:

  interface = "${lookup{$sender_address_domain}lsearch{/etc/exim/domainips}{$value}}

  1. 重新启动 exim。service exim restart对我有用(Centos),或者另一种方法是/etc/init.d/exim restart

然后,根据发件人的域,在发送每封电子邮件时从文件中获取 IP。


注意:除了在无控制面板的系统中工作外,这似乎也适用于 Vesta CP

相关内容