Centos
沒有與 exim /etc/mailips 文件等效的控制面板來為每個域的外發郵件配置 IP?
我遇到了使用錯誤 IP 地址發送外發 SMTP 郵件的問題。
我使用 exim 發送郵件。我找到了一個指南“如何手動配置 Exim 的傳出 IP 地址”,它建議修改
/etc/mailips
. 這個文件看起來正是我正在尋找的。不幸的是,我的伺服器上不存在該文件。經過仔細檢查,我認為該文件不是正常 exim 配置的一部分,而是由某個專有控制面板包創建以簡化 exim 配置。我在 exim 中找不到任何直接等價物。
如何為 exim 中的每個域配置外發郵件的 IP 地址?
看來該文件確實是由某個專有控制面板包創建的。
好消息是,很容易自己動手。
interface
Exim config 可以使用該屬性修復 IP 地址。理論上,它是每台伺服器一個 IP,但是一點程式碼就可以使它動態化。這改編自loginroot 文章:
- 找到你的 exim 配置文件,
exim.conf
. 他們建議/etc/exim.conf
,我的在/etc/exim/exim.conf
- 創建一個文件來儲存域 - IP 關聯。我和他們一起去
/etc/exim/domainips
,他們喜歡/etc/virtual/domainips
- 用這樣的域和 IP 填充它:
some-domain.com: 123.123.123.123 anotherdomain.org: 98.98.98.98
- 在
exim.conf
文件中,找到該部分remote_smtp:
- 如果下面有
interface = some.ip.add.ress
一行remote_smtp:
,請將其刪除。- 使用之前的文件名添加一行:
interface = "${lookup{$sender_address_domain}lsearch{/etc/exim/domainips}{$value}}
- 重啟exim。
service exim restart
為我工作(Centos),或者替代方案是/etc/init.d/exim restart
然後,這會根據發件人域在每封電子郵件發送時從文件中獲取 IP。
注意:除了在無控制面板系統中工作外,這似乎也適用於 Vesta CP