You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Debian系统sendmail无法向Gmail发送邮件的问题排查求助

Debian系统sendmail无法向Gmail发送邮件的问题排查求助

兄弟,看了你的退信内容,问题其实已经明明白白摆在那儿了——Gmail的IPv6反垃圾邮件机制把你的邮件给拦下来了!

先给你拆解下退信里的关键错误信息:

550-5.7.1 [ (IPv6 Address) ] Our system has detected that this message does not meet IPv6 sending guidelines regarding PTR records and authentication.

这句话直接点出核心问题:你的服务器用IPv6发邮件时,没有配置合法的PTR反向解析记录,同时可能缺少邮件认证(SPF/DKIM/DMARC),不符合Gmail的IPv6发送规范。

下面给你分步解决的方案:

临时应急方案:禁用sendmail的IPv6支持

如果你现在急需发邮件,可以先暂时让sendmail只用IPv4发送,避开IPv6的限制:

  • 打开sendmail的主配置文件/etc/mail/sendmail.cf
  • 找到包含DAEMON_OPTIONS的行,把里面的Family=inet6删掉,或者改成Family=inet(只启用IPv4)
  • 重启sendmail服务:systemctl restart sendmail
  • 用sendmail -v 你的测试@gmail.com发一封测试邮件,看看能不能成功投递

彻底解决IPv6合规问题(推荐)

如果想长期用IPv6发邮件,必须搞定以下两个关键配置:

1. 配置IPv6的PTR反向解析记录

  • 联系你的服务器/VPS提供商,要求给你的IPv6地址配置PTR记录,指向你的服务器域名(比如退信里的WS301.WS301.intern)
  • 注意:PTR记录的反向解析结果必须和你的服务器域名正向解析(A/AAAA记录)匹配,否则Gmail依然会拒收

2. 配置邮件认证机制(SPF/DKIM/DMARC)

  • SPF记录:在你的域名DNS管理后台添加一条TXT记录,内容类似v=spf1 ip6:你的IPv6地址 -all,明确授权这个IPv6地址可以代表你的域名发邮件
  • DKIM签名:给sendmail配置DKIM,生成密钥对后,把公钥添加到域名的DNS TXT记录里,确保sendmail发送邮件时自动带上DKIM签名(具体配置可以参考sendmail的DKIM插件文档)
  • DMARC记录:添加一条TXT记录,比如v=DMARC1; p=quarantine; sp=quarantine; rua=mailto:dmarc@你的域名,指导收件方如何处理未通过认证的邮件,同时能收到认证失败的报告

额外检查点

退信里显示邮件从localhost [127.0.0.1]发起,你可以检查sendmail的MASQUERADE_AS配置,确保邮件是以你的服务器域名(而非localhost)的身份发出,这也能提升邮件的可信度。

测试的时候记得用sendmail -v命令,它会输出详细的SMTP交互日志,能帮你快速定位后续的问题~

备注:内容来源于stack exchange,提问作者Troyer05

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 13:27:57