AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1133097
Accepted
HippoMan
HippoMan
Asked: 2023-06-12 05:51:49 +0800 CST2023-06-12 05:51:49 +0800 CST 2023-06-12 05:51:49 +0800 CST

Gmail 报告从 Thunderbird 通过 postfix 发送的电子邮件存在 SPF 问题

  • 772

这个问题类似于 Mozilla 论坛中的以下问题。但是,这个问题的答案并没有解决我所看到的问题。

Mozilla 论坛中的问题:https://support.mozilla.org/lt/questions/1369698

换句话说,只有当此类邮件是通过 Thunderbird 发送时,我才能让 Google 接受发往 gmail.com 地址的邮件。使用非 Thunderbird 客户端从运行 Thunderbird 的同一台机器发送到具有相同发件人地址的相同 gmail.com 地址的消息通过相同的 SMTP 服务器发送出去总是没有问题。

我的情况有点复杂。为了描述发生了什么,我将使用以下域名:

localmachine-example.com—— 运行 Thunderbird 的我的 ubuntu-20.0.4 台式机

postfix-example.com—— 运行 postfix-3.5.18 的我的 debian-11 电子邮件服务器机器

当我使用 Thunderbird 时,我将其配置为使用此主机和端口通过 SMTP 发送外发电子邮件:

postfix-example.com/port=587

postfix-example.com SMTP 服务器处理的所有域都有正确的 SPF、DKIM 和 DMARC 记录,每当我通过各种在线域验证服务查询它们的有效性时,它们总是显示为正确的。

对于除 gmail.com 地址之外的所有电子邮件目的地,当我从运行在 localmachine-example.com 上的 Thunderbird 发送电子邮件时,无论发送地址是什么,这些邮件都会转到我的 postfix 服务器,然后成功地将它们路由到目的地。

但是,如果目标地址具体是 gmail.com 地址,Google 会返回邮件并显示以下消息。假设我将电子邮件发送到 [email protected]。这是返回的消息:

Jun 11 20:29:12 postfix-example postfix/smtp[1088941]: 81AC812C554:to=<[email protected]>, relay=gmail-smtp-in.l.google.com[2607:f8b0:4002:c1b::1b]:25, delay=0.46, delays=0.16/0.01/0.02/0.25, dsn=5.7.25, status=bounced (host gmail-smtp-in.l.google.com[2607:f8b0:4002:c1b::1b] said: 550-5.7.25 [2600:3c02::f03c:93ff:febc:dd9e] The IP address sending this message 550-5.7.25 does not have a PTR record setup, or the corresponding forward DNS 550-5.7.25 entry does not point to the sending IP. As a policy, Gmail does not 550-5.7.25 accept messages from IPs with missing PTR records. Please visit 550-5.7.25  https://support.google.com/mail/answer/81126#ip-practices for more 550 5.7.25 information. g200-20020a0dddd1000000b0056d0485d928si2677570ywe.362 - gsmtp (in reply to end of DATA command)

除了 gmail.com 地址之外,没有任何电子邮件目的地无法接受通过 Thunderbird 发送的类似邮件。

并请仔细注意以下事项:

如果我不使用 Thunderbird,而是使用 emacs“Wanderlust”电子邮件客户端将完全相同的消息从完全相同的 localmachine-example.com 机器发送到完全相同的 [email protected] 地址,并通过完全相同的路由postfix-example.com/port=587 SMTP 服务器,它毫无问题地到达 gmail.com 目的地。

换句话说 ...

(1) Thunderbird 客户端和 emacs“Wanderlust”电子邮件客户端都在同一台 localmachine-example.com 主机上运行。

(2) Thunderbird 客户端和 emacs “Wanderlust” 电子邮件客户端正在发送具有相同发件人地址的消息。

(3) Thunderbird 客户端和 emacs“Wanderlust”电子邮件客户端都在发送具有相同 [email protected] 收件人地址的邮件。

(4) Thunderbird客户端和emacs“Wanderlust”邮件客户端都配置为通过同一个SMTP服务器发送外发邮件:postfix-example.com/port=587

(5) 所有通过 emacs “Wanderlust” 电子邮件客户端发送的电子邮件总是毫无问题地到达 [email protected] 地址。

(6) 但是,所有通过 Thunderbird 客户端发送到 gmail.com 地址的电子邮件总是被退回,并显示我在上面发布的错误消息。

当我从我的 localmachine-example.com 主机发送到 gmail.com 地址时,有谁知道我可以做些什么来配置 Thunderbird 不会导致这种错误?

此外,通过 Seamonkey 而不是 Thunderbird 发送时,我得到了完全相同的行为。

非常感谢你提前。

postfix
  • 2 2 个回答
  • 66 Views

2 个回答

  • Voted
  1. Keith Langmead
    2023-06-12T13:57:25+08:002023-06-12T13:57:25+08:00

    该错误不是关于 SPF 的抱怨,而是告诉您缺少 的 PTR 记录2600:3c02::f03c:93ff:febc:dd9e,并且从这里看来它没有。所以谷歌试图对 IP 进行反向 DNS 查找,并期望得到指向邮件服务器的 A / AAAA 记录的结果。

    大概那是您的 Postfix 服务器?它通常使用 IPv6 发送还是其他电子邮件通过 IPv4 发送并且 PTR 尚未设置为 IPv6?Postfix 中的某些设置导致您的 Thunderbird 改为通过 IPv6 发送?或者该 IP 是否属于您运行 Thunderbird 的机器,并且出于某种原因从该 Postfix 发送时保留该 IP 作为源而不是将其更改为自己的 IP?

    • 3
  2. Best Answer
    HippoMan
    2023-06-13T21:51:47+08:002023-06-13T21:51:47+08:00

    事实证明,这个问题是由于 Thunderbird 的一个“特性”(哈哈!)。

    我找到了答案,并在这里进行了讨论: http://forums.mozillazine.org/viewtopic.php? f=39&t=3110324&p=14956991#p14956991

    我通过在 Thunderbird 中为 Thunderbird 服务的每个电子邮件地址创建一个单独的、唯一的 SMTP 服务器条目来解决这个问题。

    PS:Seamonkey 也有同样的“特性”。

    • 0

相关问题

  • Postfix 在特定端口上接受邮件

  • 让 Postfix 以两种方式处理垃圾邮件

  • Postfix 或 exim:自动/程序化和转发电子邮件设置

  • 后缀电子邮件地址

  • 什么是最好的开源电子邮件解决方案包

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve