网络与 IP

新服务器 IP 发邮件进垃圾箱怎么办:rDNS、SPF、DKIM、DMARC 配置与 IP 预热

8 个步骤 8 分钟阅读 44 次阅读 0
本文目录

从全新服务器 IP 发出的邮件,即使内容完全正当,也经常进入垃圾箱,甚至被直接拒收。邮箱服务商判断一个新 IP,首先看它的技术配置,之后几周再看它的发信行为。本文梳理决定邮件能否被接收的检查清单:出站 25 端口、反向解析、SPF、DKIM 和 DMARC、TLS、Gmail 与 Yahoo 的发件人要求、如何预热新 IP,以及如何测试效果。如需搭建完整的邮件服务器,另请参见使用 Mailcow 或 Postal 自建邮件服务器。

只向主动要求接收邮件的收件人发信。群发未经请求的批量邮件会让 IP 很快被列入黑名单、招致滥用投诉,并且几乎违反所有服务商的可接受使用政策(AUP)。

步骤 1:确认出站 25 端口可用

为防止垃圾邮件,许多服务商默认封锁出站 25 端口。请在服务器上测试:

# Should print "Connected" or an SMTP banner starting with 220
nc -vz -w 5 gmail-smtp-in.l.google.com 25
timeout 5 bash -c 'cat < /dev/tcp/gmail-smtp-in.l.google.com/25' | head -1

如果连接超时,说明你的服务封锁了出站 SMTP;请提交工单,并说明你将发送哪类邮件。

步骤 2:设置反向解析与主机名

IP 的 PTR 记录应解析到你的邮件主机名,而该主机名的 A 记录也要指回同一个 IP(即正向确认的反向解析,FCrDNS)。服务器与其他邮件服务器握手(HELO/EHLO)时也应使用这个主机名。

dig -x 203.0.113.10 +short          # expect: mail.example.com.
dig mail.example.com A +short        # expect: 203.0.113.10
hostnamectl set-hostname mail.example.com
postconf -e 'myhostname = mail.example.com'   # if you use Postfix

反向解析由 IP 段的所有者设置,参见 设置 rDNS / PTR 记录。

步骤 3:发布 SPF 记录

SPF 列出了允许代表你的域名发信的服务器。在域名上发布一条 TXT 记录:

example.com.   TXT   "v=spf1 ip4:203.0.113.10 -all"

# If you also send through another service, include it in the same single record, e.g.
# "v=spf1 ip4:203.0.113.10 include:_spf.example-mailservice.com -all"

dig TXT example.com +short

每个域名只能有一条 SPF 记录,存在两条记录会导致 SPF 校验失败。

步骤 4:使用 DKIM 为邮件签名

DKIM 会为每封邮件添加加密签名。大多数邮件套件(Mailcow、iRedMail、Mail-in-a-Box)会自动生成密钥;如果使用 Postfix 和 OpenDKIM:

apt install -y opendkim opendkim-tools
mkdir -p /etc/opendkim/keys/example.com
opendkim-genkey -b 2048 -d example.com -s mail -D /etc/opendkim/keys/example.com/
chown -R opendkim:opendkim /etc/opendkim/keys
cat /etc/opendkim/keys/example.com/mail.txt     # the DNS record to publish

# After publishing mail._domainkey.example.com TXT "v=DKIM1; k=rsa; p=..." check it:
dig TXT mail._domainkey.example.com +short

然后按照所用发行版的文档,将 OpenDKIM 作为 milter 接入 Postfix,并确认发出的邮件带有 DKIM-Signature 邮件头。

步骤 5:发布 DMARC 记录

DMARC 告诉收件方:当 SPF 和 DKIM 与发件人(From)域名不对齐时应如何处理,并向你发送报告。建议先从监控模式开始,等报告确认正常后再逐步收紧策略。

_dmarc.example.com.   TXT   "v=DMARC1; p=none; rua=mailto:[email protected]"

# Later, when legitimate mail passes consistently:
# "v=DMARC1; p=quarantine; rua=mailto:[email protected]"
# "v=DMARC1; p=reject; rua=mailto:[email protected]"

步骤 6:满足 Gmail 与 Yahoo 的发件要求

自 2024 年起,Gmail 和 Yahoo 要求所有发件人具备有效的 SPF 或 DKIM、正向确认的反向解析和 TLS,并保持较低的垃圾邮件投诉率。批量发件人(每天向 Gmail 发送约 5,000 封及以上)还必须同时配置 SPF 和 DKIM、设置 DMARC 记录、保证 From 域名对齐,并为营销邮件提供一键退订。请在邮件服务器上使用有效的 TLS 证书(参见使用 Certbot 或 acme.sh 申请免费 SSL 证书),确保连接经过加密。

步骤 7:预热新 IP

新 IP 没有任何信誉积累,第一天就大量发信,看起来就像在群发垃圾邮件。应逐步提高发送量,并优先发给最可能打开和回复的收件人。

阶段每日发送量(参考)说明
第 1–3 天50–100最活跃的收件人、事务类邮件
第 4–7 天200–500关注退信情况和进入垃圾箱的比例
第 2 周1,000–2,000仅在投诉率保持较低时继续提量
第 3–4 周每隔几天翻一倍一旦延迟投递(deferral)增多,立即降量

在 Google Postmaster Tools 中注册你的域名,并在 Microsoft SNDS 中注册你的 IP,即可查看这些服务商对你的发信流量的评价。

步骤 8:测试与监控

  • 向 mail-tester.com 等测试服务发送一封邮件,它会对 SPF、DKIM、DMARC、rDNS、黑名单和邮件内容进行评分。
  • 发信到你自己的 Gmail 和 Outlook 邮箱,打开 Show original(显示原始邮件):Authentication-Results 邮件头中必须显示 spf=pass、dkim=pass 和 dmarc=pass。
  • 定期检查 IP 是否被列入黑名单(参见 IP 黑名单检测),并阅读 DMARC 报告。

常见问题

各项检测都通过了,Gmail 仍把邮件放进垃圾箱

这说明问题出在信誉和内容上。请放慢发送速度,只发给活跃的收件人,移除会退信的地址,避免使用短链接和纯图片邮件,并给 IP 和域名几周时间积累发信记录。

营销邮件需要使用单独的 IP 吗?

如果两类邮件都发,建议分开。将事务类邮件(密码重置、账单)放在独立的 IP 和域名或子域名上,可以避免受到营销活动信誉的影响。

使用邮件投递服务会更省事吗?

发送量较大时,通常是的。你仍然可以在自己的服务器上运行应用,再通过信誉良好的邮件投递服务中继发信,由对方负责维护 IP 信誉。

如果按以上步骤操作后问题仍未解决,请提交工单联系 IMIDC 7×24 技术支持,并附上服务器 IP、邮件主机名和域名、25 端口测试结果以及完整的退信内容或测试报告,方便工程师快速定位。

这篇文章有帮助吗?

相关教程