运行自己的邮件服务器是自托管中最困难的事情之一,也是最诱人的事情之一。这并非不可能,但投递是难题:大型服务商不信任小型服务器,一个失误就可能让你的邮件进入垃圾箱。开始之前,请先了解自己要面对什么。
为什么这么难
- 信誉。主要服务商根据 IP 地址的历史来评判发件人。新服务器一开始没有任何信誉。
- 身份验证。没有正确的 SPF、DKIM 和 DMARC 记录,邮件会被拒收或进入垃圾箱。
- 反向 DNS。该 IP 必须能反向解析到你的邮件主机名。
- 持续维护。你需要打补丁、监控队列并处理滥用举报。
应该做
- 设置 SPF、DKIM 和 DMARC。它们告诉收件方你的服务器可以代表你的域名发信。
- 让反向 DNS 与你的邮件主机名一致,并确保该主机名解析到同一个 IP。
- 收发邮件都使用 TLS。
- 慢慢开始。起初发送量要小,并且只发给期待收到你邮件的人。
- 关闭开放中继。你的服务器只能为已通过身份验证的用户发信。
- 备份邮箱和配置。参见 使用 restic 或 borg 备份。
不应该做
- 不要从新服务器发送群发或营销邮件。请为此使用专业的发送服务。
- 不要在没有身份验证和 TLS 的情况下开放 25、143 或 110 端口。
- 如果可以避免,不要把邮件服务和其他所有服务放在同一台小型服务器上。
- 不要忽视退信和滥用举报。
你需要的记录
example.com. TXT "v=spf1 mx -all"
mail._domainkey TXT "v=DKIM1; k=rsa; p=PUBLIC_KEY"
_dmarc.example.com. TXT "v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com"
example.com. MX 10 mail.example.com.
请将这些值替换为你自己的。在依赖这套配置之前,请先用邮件测试工具进行测试。
有帮助的工具
Mailcow、Mail-in-a-Box 和 Stalwart 等打包好的邮件服务器可以处理设置中最困难的部分。请对它们进行比较并阅读最新文档。它们仍然需要一个干净的 IP 和上述 DNS 记录。
更简单的选择:随主机附带的电子邮件
如果你主要想要一个使用自己域名的邮箱,我们的 免费电子邮件托管 和虚拟主机套餐都包含不限邮箱数量的电子邮件,无需自己运行服务器。这样可以避免上述投递问题。