尽管我允许防火墙中的所有内容,但 SMTP 25 仍关闭(Debian 服务器运行 sendmail)

尽管我允许防火墙中的所有内容,但 SMTP 25 仍关闭(Debian 服务器运行 sendmail)

我在 Debian 服务器中运行 sendmail + dovecot。我已启用防火墙规则以允许所有内容:

  iptables -P INPUT ACCEPT
  iptables -P OUTPUT ACCEPT
  iptables -P FORWARD ACCEPT
  iptables -F
  iptables -X

然而,在 yougetsignal.com 上快速检查后,我的 25 端口仍然被阻止。但 143、80 端口没有问题。

答案1

首先,感谢 symcbean,检查它是否正在运行。在系统上,输入

telnet localhost 25

如果你没有看到类似

220 risby.home.domainname.net ESMTP Sendmail 8.14.4/8.14.2; Wed, 1 Dec 2010 10:20:38 GMT

您的 sendmail 没有以守护进程模式运行,您将无法从任何地方访问它。修复此问题。

如果您确实看到了横幅,那么可能是 sendmail 没有绑定到您的外部 IP 地址。请执行以下操作

netstat -an|grep -w 25|grep LISTEN

如果你看到

tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN    

我错了,我们必须进一步挖掘。如果你看到

tcp        0      0 127.0.0.1:25                  0.0.0.0:*                   LISTEN    

那么 sendmail 就被配置成只监听 loopback 接口,这就是为什么你不能从机器外访问它。查找一行内容

DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

在您的 中sendmail.mc,将其删除(如果您忽略我,并将其注释掉,请在行dnl首使用 ,而不是#),重新生成您的sendmail.cf并重新启动 sendmail。

相关内容