# SMTP邮件10天前停止工作（curl可用；服务器没有SMTPS）

**URL:** <https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966>\
**Category:** Self-hosting\
**Tags:** email\
**Created:** [2023年三月21日 23:15 UTC](https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966 "2023-03-21T23:15:07Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![gi1242](https://avatars.discourse-cdn.com/v4/letter/g/839c29/32.png) [@gi1242](https://meta.discourse.org/u/gi1242)\
**Post date:** [2023年三月21日 23:15 UTC](https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966/1 "2023-03-21T23:15:07Z")

</div>

大家好，

我的网站已经运行了好几年，一直没有问题。突然之间，SMTP 就无法工作了。（我在主机或容器中都没有进行任何配置更改）。

我使用的是 SMTP（不是 SMTPS）。我进入了 discourse 容器，并使用 curl 测试了发送邮件的功能：

```
curl smtp://mail.example.com --mail-from myself@example.com --mail-rcpt receiver@example.com --upload-file email.txt

```

但是 Discourse 没有发送任何邮件，日志只显示：

```
Net::ReadTimeout with #<Socket:(closed)>

```

主机上的 Postfix 日志显示：

```
connect from unknown[172.17.0.5]
lost connection after CONNECT from unknown[172.17.0.5]
disconnect from unknown[172.17.0.5] commands=0/0

```

有人知道可能是什么改变了吗？

提前致谢。

GI

PS：抱歉，此帖子的第一个版本意外被截断，只发布了半条消息。我刚刚编辑了它。

---

<div class="post-metadata">

**Author:** ![gi1242](https://avatars.discourse-cdn.com/v4/letter/g/839c29/32.png) [@gi1242](https://meta.discourse.org/u/gi1242)\
**Post date:** [2023年三月22日 00:14 UTC](https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966/2 "2023-03-22T00:14:36Z")

</div>

大家好，

我追查了问题。原来主机现在对所有传入邮件（即使来自容器）都施加了 7 秒的延迟。默认情况下，Discourse 在 5 秒后超时。  
我在 `containers/app.yml` 中将其增加到 10 秒：

```
DISCOURSE_SMTP_OPEN_TIMEOUT: 10
DISCOURSE_SMTP_READ_TIMEOUT: 10

```

现在可以用了…… **但是** ，有人知道如何消除主机上的 postfix 延迟吗？我一直在查找配置文件，但找不到任何东西……  
GI

---

<div class="post-metadata">

**Author:** ![supermathie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/supermathie/32/507518_2.png) [@supermathie](https://meta.discourse.org/u/supermathie)\
**Post date:** [2023年三月22日 01:52 UTC](https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966/3 "2023-03-22T01:52:53Z")

</div>

如果您正在使用 `postscreen`，请参阅 `postscreen_greet_wait` 和 `postscreen_greet_action`。

如果不是，这可能是由于连接 IP 的反向查找 DNS 超时。

---

<div class="post-metadata">

**Author:** ![gi1242](https://avatars.discourse-cdn.com/v4/letter/g/839c29/32.png) [@gi1242](https://meta.discourse.org/u/gi1242)\
**Post date:** [2023年三月22日 02:31 UTC](https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966/4 "2023-03-22T02:31:12Z")

</div>

> [@supermathie](#):
>
> 如果不是，这可能是由于连接IP的反向查找DNS超时

哈！非常感谢！这正是问题所在。

我刚刚为所有Docker通常会分配的IP地址（172.17.0.2到10）添加了静态IP地址（带有虚拟主机名）。所以，如果我的容器出现不同的IP，希望它不会在nslookup上停滞。

我想知道是否有办法让Docker解析所有容器的IP地址……

再次感谢

---

<div class="post-metadata">

**Author:** ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)\
**Post date:** [2023年四月21日 02:32 UTC](https://meta.discourse.org/t/smtp-email-stopped-working-10-days-ago-curl-works-server-doesnt-have-smtps/258966/5 "2023-04-21T02:32:04Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
