Sendmail
有沒有什麼方法可以在沒有中繼伺服器的情況下發送郵件?
我想將郵件從一台伺服器發送到外部域 (
xxx@yyy.com
)。我該如何實施?
如果您正在配置郵件伺服器,它應該能夠在幾乎任何地方自行發送郵件。它可能是您自己網路的中繼伺服器,但不應從 Internet 中繼到 Internet。
對於正確配置的郵件伺服器,您將需要:
- 用於配置郵件伺服器的域。雖然您可以呼叫執行郵件伺服器的主機,但最好使用子域,如
smtp
或mta
.- 靜態 IP 地址。將其 PTR 記錄配置為返回您為郵件伺服器選擇的 FQDN(完全限定域名)。為具有此 IP 的郵件伺服器配置一條 A 記錄。(您還可以為執行郵件伺服器的主機配置具有此 IP 的 A 記錄。)
- 郵件伺服器軟體。(我更喜歡 Exim,但其他使用 postfix、sendmail 或其他軟體。)配置伺服器以使用您為郵件伺服器選擇的 FQDN 來辨識自己。
- 在郵件伺服器上配置郵件管理員和濫用地址以將郵件轉發給您。
您現在應該有一個工作郵件伺服器。您還需要做一些額外的工作。
- 配置垃圾郵件過濾器。您很快就會收到垃圾郵件。
- 配置您希望郵件伺服器接受帶有
MX
記錄的郵件的任何域。- 為郵件伺服器 FQDN 配置 SPF 記錄。創建一個
TXT
包含v=spf1 a mx -all
.- 為所有不發送電子郵件的域(即
www.example.com
)配置 SPF 記錄。創建一個TXT
包含v=spf1 -all
.- 為您將接收郵件的域配置 SPF 記錄。包含的
TXT
記錄v=spf1 mx ~all
將是一個起點。研究和實施更好的政策。- 研究
DKIM
並開始簽署外發電子郵件。- 相應地研究
DMARC
和配置 DNS。- 使用身份驗證配置送出埠,以允許授權的遠端和本地使用者進行身份驗證並從您的伺服器發送電子郵件,
在您工作時執行測試以確保您已正確配置。
如果您在自己的網路內發送,或發送到將為您中繼的合作網路,則不需要上述大部分內容。我仍然建議設置 SPF,尤其是對於您的伺服器。
雖然 SPF 最初旨在保護信封發件人 (MAIL FROM) 地址,但它在保護伺服器地址(HELO 和/或 rDNS)方面更加可靠。幾乎任何東西都返回,
pass
或者none
是欺騙主機地址的強烈指示。