Linux VPS 下的 SpamAssassin

Linux VPS 下的 SpamAssassin

我和这些家伙一起秃头了:

在 Linux VPS (CentOS) 上,我设置了一个邮件服务器 (Exim+Dovecot+Clamav+SpamAssassin),但使用 SpamAssassin 扫描邮件中的垃圾邮件被证明是一个挑战。我不是 Linux 专家,尤其是在涉及与 VPS 相关的挑战时,但我几乎可以使用 RTFM 并取得成功。这一个打败了我:

在我的 FreeBSD 服务器上,我可以轻松获得所需的结果:

(15:59:00 <~>) 0 $ sockstat -l | grep 783
root     perl       83997 5  tcp4   127.0.0.1:783         *:*
root     perl       83996 5  tcp4   127.0.0.1:783         *:*
root     perl       10281 5  tcp4   127.0.0.1:783         *:*

(15:57:21 <~>) 0 $ telnet 127.0.0.1 783
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
CONT
SPAMD/1.0 76 Bad header line: CONT
Connection closed by foreign host.`

然而,在 Linux VPS 上,当我运行相同的测试时,它只是挂在那里......端口上没有任何响应,即使我可以看到 spamd 正在侦听 783:

[root@vps exim]# netstat -anp | grep 783
tcp   0   0  127.0.0.1:783   0.0.0.0:*   LISTEN   21602/spamd.pid

如果你们中有人在 VPS 上运行他们的服务器并且能够与 spamd 通信,请告诉我在哪里查找。

如果它可能有帮助,我可以从远程位置连接到该服务器上的 POP3 端口,但不能从本地主机 (127.0.0.1) 连接!由于 spamd 设置为侦听 127.0.0.1,因此我无法从远程服务器测试它,并且我不打算将其更改为侦听公共 IP 以进行测试。

我需要在 Linux 上更改什么吗?

答案1

它适用于运行 Debian 的 Linode VPS。如果无法连接,对我来说也像是 iptables。如果您杀死 spamd 然后尝试 telnet 会发生什么?您的连接是否被拒绝(正如您应该的那样)或者它仍然挂起并尝试连接?如果是这样,那肯定是 iptables/防火墙的问题。

在这种情况下,类似的东西iptables -I INPUT 1 -i lo -j ACCEPT应该可以解决问题。

答案2

首先,让我们看看是否可以连接到环回。十分之九,这是你的问题;)

在虚拟机上打开 shell,选择附近的端口号。

$ sudo nc -l 790

打开另一个外壳。

$ echo 'MehMeh' | nc localhost 790

您应该在之前的 shell 上看到类似 ...MehMeh 的内容。但我猜你不会,在那种情况下。看看你的iptables

答案3

您能否告诉我们 ISP 使用什么 VPS 技术?我在 XEN 环境中的 Ubuntu VPS 下运行某些软件时遇到了类似的问题。 VPS 未获得软件正常运行所需的资源。

相关内容