# 关于discourse-setup的拟议更改，因为Digital Ocean屏蔽了出站SMTP

**URL:** https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778
**Category:** Development
**Created:** [2017年七月25日 13:30 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778 "2017-07-25T13:30:12Z")
**Posts on this page:** 9
**Page:** 2

<div class="post-metadata">

### Author: ![kgrier](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kgrier/32/207667_2.png) [@kgrier](https://meta.discourse.org/u/kgrier)
#### Post date: [2025年五月2日 00:12 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/21 "2025-05-02T00:12:42Z")

</div>

我曾要求 DO 在三月份也开始阻止 587 端口。当我联系他们时，我非常生气，他们坚持说他们无意阻止我的主机。我曾对 postfix（和 netcat）进行了一些实验，并证明我无法通过该主机上的三个 IP 地址中的任何一个访问 587 端口，甚至无法访问 Team 中 droplet 之间的内部子网。然后，他们的技术人员“重置”了我的 droplet 的网络，这需要我关闭然后重新启动 droplet 来恢复访问。

听起来他们是在虚拟基础设施中实施了“全局”阻止，而没有检查谁在使用 SMTP。这相当懒惰。他们本可以很容易地确定一个 droplet 是否在使用专用的商业中继，例如 Mailgun、SMTP2GO 等，并在第一轮中豁免它们。但对于不与客户沟通开始过滤/阻止 587 端口的计划，没有任何借口。

从好的方面来看，我找到了 MailerSend（MailerLite 的姐妹公司），我的流量将符合他们的免费套餐，而不是 Mailgun Flex 套餐。

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2025年五月2日 00:44 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/22 "2025-05-02T00:44:48Z")

</div>

从那以后，我所有的安装都使用了 2525。

我的几个网站多年来一直运行正常，但由于这个问题，它们停止发送邮件了。

---

<div class="post-metadata">

### Author: ![nathank](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nathank/32/290039_2.png) [@nathank](https://meta.discourse.org/u/nathank)
#### Post date: [2025年五月5日 07:24 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/23 "2025-05-05T07:24:19Z")

</div>

您是否愿意为 discourse-setup 提交一个 PR，使其成为新的默认设置？

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2025年五月5日 17:09 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/24 "2025-05-05T17:09:00Z")

</div>

除非它有一个#pr-welcome。

另外，这是一个4个字符的编辑。与其接受一个PR，不如让某人直接进行更改可能更容易。

---

<div class="post-metadata">

### Author: ![Architect](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/architect/32/520575_2.png) [@Architect](https://meta.discourse.org/u/Architect)
#### Post date: [2025年五月8日 04:38 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/25 "2025-05-08T04:38:04Z")

</div>

在数字海洋服务器上设置新的 Discourse 实例时，我最近遇到了这个问题。支持人员说端口 587、465 和 25 不受支持，但 2525 应该可以工作。将 SMTP 设置为端口 2525，但使用 Brevo 发送激活电子邮件仍然不起作用，可能是其他问题。

看起来 SendGrid 可能是更好的选择，并且/或者与该服务器提供商更好地支持。数字海洋支持人员写道：

“您也可以使用 SendGrid 的 REST API，它允许您通过 HTTP 请求发送电子邮件，而不是传统的 SMTP 协议（如果适合您），或者使用另一个第三方发送服务。”

我不知道 REST API 如何与 HTTP 一起工作，这似乎比 SMTP 更好？

---

<div class="post-metadata">

### Author: ![kgrier](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kgrier/32/207667_2.png) [@kgrier](https://meta.discourse.org/u/kgrier)
#### Post date: [2025年五月8日 05:33 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/26 "2025-05-08T05:33:48Z")

</div>

抱歉给您带来了不便。2525 可以与 Discourse 和 MailGun 配合使用。他们的 Flex 计划是按需付费，并包含免费套餐。您无需重建应用程序即可在 app.yml 中更改 SMTP 参数，只需进行编辑然后执行以下命令：

cd /var/discourse  
./launcher destroy app  
./launcher start app

[https://www.mailgun.com/blog/email/which-smtp-port-understanding-ports-25-465-587/](https://www.mailgun.com/blog/email/which-smtp-port-understanding-ports-25-465-587/)

我曾使用过 SMTP2GO、Google（通过工作区账户）、MailGun、[POBOX.com](http://POBOX.com)，最近还使用了 MailerSend。在我看来，MailGun 是最直接的。MailerSend 也可以排在第二位，但我不得不向他们的技术支持解释 Discourse 是托管在 Linux 主机上的 Docker 容器中，Linux 主机不需要 SSL 证书等。值得称赞的是，他们理解了并为我提升了试用账户的级别。

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2025年五月8日 13:27 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/27 "2025-05-08T13:27:23Z")

</div>

根据我最近与几位客户的交谈，我认为 Mailgun 的 Flex 套餐已不再可用。如果您每天需要发送超过 100 条消息，则每月费用为 15 美元。

端口 587 被阻止的问题是 DigitalOcean 的问题。我曾有几位客户因为 DigitalOcean 在未发出警告的情况下开始阻止该端口而无法发送邮件。不过，切换到端口 2525 是一个简单的修复方法。

---

<div class="post-metadata">

### Author: ![Architect](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/architect/32/520575_2.png) [@Architect](https://meta.discourse.org/u/Architect)
#### Post date: [2025年五月8日 14:49 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/28 "2025-05-08T14:49:37Z")

</div>

感谢您的推荐，我之前用过 maligun，也成功了，但遇到了一些困难，所以换成了 Brevo，我觉得它更容易上手。最近几个月没有活跃的网站，现在正在努力启动一个新的网站。

可能会尝试其他发送者或 SendGrid。不确定 API 选项是否与 Discourse 兼容，有人用过吗？

---

<div class="post-metadata">

### Author: ![nathank](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nathank/32/290039_2.png) [@nathank](https://meta.discourse.org/u/nathank)
#### Post date: [2025年六月9日 22:17 UTC](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778/29 "2025-06-09T22:17:41Z")

</div>

是的，DO 阻止了我的两个网站。切换到 2525 解决了这个问题。

是的，Mailgun 不再提供 flex 计划（但为现有客户保留了该计划）。

> [@pfaffman](#):
>
> 除非它有 #pr-welcome::tag。
> 
> 但另外，这是一个 4 个字符的编辑。让别人直接进行更改可能比接受 PR 更容易。

我们如何引起他们的注意来处理这个问题？

[上一頁](https://meta.discourse.org/t/proposed-changes-to-discourse-setup-because-digital-ocean-blocks-outbound-smtp/66778.md?page=1)
