很多 ISP 都阻塞端口 25,我该如何选择替代端口?

Xeo*_*oss 5 smtp failover port tcp

我正在构建一个应用程序,它将作为不同网络上的组合 MUA/MTA。但是,许多网络都使用 ISP 来阻止 SMTP 的 25 端口。因此,我还想打开一个辅助端口,以便在端口 25 关闭时某些安装可以在该端口上进行通信。

如何选择第二个端口?我知道有些人使用端口 26端口 2525。选择不会干扰现有软件的端口的正确方法是什么?

Mic*_*ton 15

如果您只是代表在您的应用程序中发起电子邮件的最终用户发送电子邮件,请使用经过身份验证的 SMTP 到端口 587。

您可以通过 SMTPS 端口 465将邮件发送到某些服务器,如果远程 MTA 启用了 SSL/TLS 并在该端口上侦听,但不要指望它。

否则,建议用户他们需要企业级 ISP。

  • @Xeoncross 根据服务器故障 [FAQ],尝试规避 ISP 政策是 ***明确*** 的题外话。如果您需要 MTA 到 MTA SMTP 通信,您*需要*端口 25。故事结束,RFC 结束。其他任何事情都是 (a) 不是“专业的”(这是一种黑客行为),并且 (b) 违反了您的 ISP 的使用条款,我们不会帮助您解决这些问题... (7认同)
  • @Xeoncross 您不能神奇地让 Internet 上的所有其他 MTA 在 25 以外的其他端口上发言。 (3认同)
  • 这基本上就是我输入的答案,所以这是附加链接:[SMTP 端口上的维基百科](http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol#Ports) (2认同)

Kaz*_*Kaz 7

你的问题对我来说不是 100% 清楚。您是要连接入站端口 25,还是连接出站端口 25?我将把答案一分为二以涵盖这两个基础。

出站 25

如果“安装在端口 25 上通信”,则表示软件安装尝试使用端口 25 联系其他服务器,这是一个坏主意。不要发布在端口 25 上调用的软件。

您的软件用于“打电话回家”或联系其他服务器的唯一出站端口是端口 80。不仅是端口,而且协议必须是 HTTP。一些防火墙允许端口 80,但它们也会检查协议并在它不是 HTTP 时阻止它。您还可以依靠 443、HTTPS。不过,如果没有端口 80 连接,我会提供一个替代的安装/注册工作流程。

ISP 阻止外发 25,因为垃圾邮件发送者使用它从用户线路直接联系邮件服务器并传递垃圾邮件。

话虽如此,您当然可以发送使用端口 25 发送邮件的软件。但是,该邮件应该发送到由用户配置的 SMTP 服务器。(通常是由他们的 ISP 提供的中继,这可能需要身份验证。)

入站 25

无法打开传入端口 25 的用户通常无法部署将充当域的邮件服务器的应用程序。

这些人需要一种解决方法,包括更改他们的订阅、更改为另一个 ISP,或者使用某个其他网络中的某些机器作为端口转发代理,使用某个打开的端口将端口 25 连接转发到真实服务器。

备用端口的选择最好留作由用户决定的配置。

没有保证开放的通用端口号,无论 ISP。

但更大的问题是所有邮件软件都希望连接到端口 25。邮件交换 (MX) DNS 记录不包括端口号;它解析为主机。

MX 主机应侦听端口 25。