我正在尝试设置sendmail
以在我的真实电子邮件帐户上接收系统消息。我已为 root 设置别名并启动newaliases
。现在mailq
报告:
Deferred: Connection timed out with mymail.server.com
我怀疑这是由于 ISP 阻止了端口 25(我无法通过此端口 telnet 到我的邮件服务器,使用端口 587 进行 telnet 操作可以正常进行)。
我的问题是如何配置 sendamil,以便使用端口 587 而不是 25 连接其他服务器?我正在使用交钥匙核心(基于 Ubuntu 10.04)发行版。
答案1
您可以研究一些 SMTP 中继服务,例如 changeip.com,它可以协助 SMTP 流量的替代端口中继。
另一个考虑因素是,当许多 ISP 出现这种情况时,这是因为他们已将服务器/服务商服务的托管限制在您所订阅的服务类别的 AUP 内。如果是这种情况,那么一些 ISP 可能会发现违反他们的 AUP 是他们取消您作为其订户或将您“升级”到(在他们看来)合适的服务产品的原因。
答案2
你的问题是基于困惑。你的信息显然是关于出站邮件,你问如何接收入站邮件。
接收入站 SMTP 邮件需要世界其他地方能够连接到您机器上的 SMTP 中继端口 — 没有如果、但是、可能或替代端口。(除非他们使用exim
进入 21 世纪并了解SRV
资源记录的MTS等_smtp._tcp.
。)如果您的 ISP 阻止世界其他地方这样做,那么除了 21 世纪的 MTS 用户之外,其他人都无法使用您的服务。您最多只能通过 ISP 进行某种存储转发安排。
然而,大多数阻止端口的 ISP 通常会阻止你连接到 SMTP 中继端口其他人的互联网其他部分的服务器。这是发送出站邮件的问题,而不是接收入站邮件的问题。这样做正是为了阻止 ISP 客户直接向其他人发送邮件。
因此,请弄清楚到底阻止了什么,以及您关心的邮件传输方向。
答案3
ISP 通常会阻止到端口 25 的传出连接(在我看来这是可取的)。此功能有助于防止其网络上的垃圾邮件机器人完全发挥作用。我阻止的绝大多数垃圾邮件来自运行垃圾邮件机器人的受感染 PC。
最好的选择是将服务器配置为通过 ISP 中继服务器进行中继。如果他们封锁了端口 25,他们几乎肯定会提供这样的服务器。
或者,您可以使用加密和经过身份验证的连接连接到要发送电子邮件的主机上的提交端口 (587)。SMTPS (465) 通常不受支持,但如果您的邮件服务器支持,则可能不会被阻止。
编辑:对于你的情况,Sendmail 可能有点大材小用。Exim4 和 Postfix 是替代的完整实现,也可能有点大材小用。 postfix
并且exim4
往往比 更常安装sendmail
。
仅中继的 SMTP 转发器之一可能更合适且更易于配置。这些包括esmtp
、msmtp
和ssmtp
。它们会将所有邮件转发到其他服务器,因此如果您想在服务器上接收一些邮件,则不合适。
无论如何,您都应该将您的主机配置为 ISP 邮件中继的卫星。您还需要设置适当的别名,以便将您的电子邮件发送到您想要的电子邮件地址。这在 、 和 中完成/etc/aliases
。sendmail
这些postfix
程序exim4
还可以使用 /etc/email-addresses 重写发件人地址。