如您所知,大多数 ISP 都会阻止端口 25 发送邮件。我的一些客户希望将我们的邮件服务器用作发送邮件服务器。但是,我们没有 TLS 或 SSL。有没有办法在 smtp 服务器上的端口 2525 上接受传入连接?
答案1
您尚未指定正在使用哪个 smtp 服务器,因此我将提出一种通用的重定向方法,无论您运行什么软件,该方法都应该有效。
添加以下 iptables 规则:
允许 2525/tcp 通过防火墙:
$ iptables -A INPUT -i eth0 -p tcp --dport 2525 -j ACCEPT
将到达 2525/tcp 的流量重定向至 25/tcp:
$ iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 2525 -j REDIRECT --to-port 25
我还没有测试过这个规则,但我相信它应该工作。
但请记住,互联网上的其他邮件服务器不知道它们需要连接到端口 2525。如果你只将此端口用于客户端发送但是,使用备用端口进行邮件发送应该没有问题。
此外,我建议您使用端口 587,而不是 2525。端口 587 是RFC 认可SMTP“提交”端口,许多客户端已经设置为使用此端口。目前,据我所知,没有 ISP 会阻止此提交端口。
user@host:~$ grep 587 /etc/services
submission 587/udp # Submission
submission 587/tcp # Submission
...
答案2
啊——您似乎正在使用 sendmail。
如果你查看 sendmail.mc,你可能会看到如下一行:
dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
如果您删除前导dnl
,然后重新生成 sendmail.cf,sendmail 应该开始监听端口 587,而不需要任何 iptables 端口转发魔法。
答案3
是的 - 大多数服务器都允许您轻松更改其监听的端口 - 并且可以轻松地将连接重定向到 Linux 机器或任何位于中等能力防火墙后面的机器上的端口 25。如何执行此操作取决于硬件/软件/操作系统。还可以轻松地配置大多数 MUA 以使用非标准端口进行 SMTP 连接。
当世界其他地方想要发送邮件时,它会尝试连接到 MX 服务器中定义的主机上的 25 端口到但您说您只是想为您的客户提供外发邮件服务。
显而易见的解决方案(适用于 Linux、Unix、MSWindows 和其他一些系统)是使用 stunnel 将流量转移到不同的端口(它还会将其包装在 SSL 中,可能允许您使用客户端证书验证)。但您确实需要确保您已设置某种身份验证,并且您的服务器包含在任何已发布的 SPF 记录中。如果您的客户/您不拥有您将为其处理邮件的域,那么它就无法启动。
C。
答案4
这是什么类型的服务器?Microsoft 还是 Linux?
如果我们谈论的是 Exchange,那么确实有一种方法,而且使用起来很简单!
让我知道!