Centos

沒有與 exim /etc/mailips 文件等效的控制面板來為每個域的外發郵件配置 IP?

  • December 9, 2015

我遇到了使用錯誤 IP 地址發送外發 SMTP 郵件的問題。

我使用 exim 發送郵件。我找到了一個指南“如何手動配置 Exim 的傳出 IP 地址”,它建議修改/etc/mailips. 這個文件看起來正是我正在尋找的。

不幸的是,我的伺服器上不存在該文件。經過仔細檢查,我認為該文件不是正常 exim 配置的一部分,而是由某個專有控制面板包創建以簡化 exim 配置。我在 exim 中找不到任何直接等價物。

如何為 exim 中的每個域配置外發郵件的 IP 地址?

看來該文件確實是由某個專有控制面板包創建的。

好消息是,很容易自己動手。interfaceExim config 可以使用該屬性修復 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

引用自:https://serverfault.com/questions/742013