![exim 不接受外部连接](https://linux22.com/image/608135/exim%20%E4%B8%8D%E6%8E%A5%E5%8F%97%E5%A4%96%E9%83%A8%E8%BF%9E%E6%8E%A5.png)
更新:这肯定是我的 ISP 阻止了端口 25。我告诉 Exim 在非标准端口上监听,然后从远程计算机检查该端口,并且一切顺利。
所以,我想我有一个新问题。有什么好方法可以解决这个问题吗?
我知道我无法在 MX 记录中指定端口(为什么在提出 DNS 时没有人想到这一点?),但可以将邮件转发到非标准端口上的服务器的服务可以工作。
我见过 no-ip.com 有一项名为 Reflector 的服务。它的价格不是很贵,但如果还有其他更便宜的方法,我很乐意听听。
不过,我还是不明白为什么它今天就停止工作了。
原始问题
我讨厌问这个问题,但我已经用 Google 搜索了所有我能想到的答案,但都无济于事,但这似乎是一件很简单的事情,所以我不知道为什么我就是想不通。但无论如何,还是让我来回答吧。
我有一个家庭服务器,使用 Apache 进行 HTTP 传输,使用 Exim 进行 SMTP 传输。我需要能够直接在家用电脑上接收邮件。到今天为止,我都没有遇到任何问题。我认为我没有改变任何东西,但突然间,我收不到任何电子邮件了。
我检查了 DNS 中的 MX 设置,一切正常。我检查了路由器上的端口转发,一切正常(并且与 Apache 的外部连接仍在进行中)。
因此,我检查了 Exim 是否正常工作。从本地主机,我可以通过 telnet 进入 Exim,它工作正常。此外,我可以从网络上的其他计算机通过 telnet 进入 Exim,它工作正常。但是,如果我尝试从外部 telnet,我会得到Unable to connect to remote host: Connection timed out
。
因此,我尝试这样做dpkg-reconfigure exim4-config
(顺便说一下,我使用的是 Ubuntu 12.10),并确保一切都已正确设置。没有问题。我查看我的配置并发现以下内容:
# listen on all all interfaces?
.ifdef MAIN_LOCAL_INTERFACES
local_interfaces = MAIN_LOCAL_INTERFACES
.endif
一些谷歌搜索让我相信local_interfaces
控制 exim 将监听的内容。因此,我尝试根据进出口文件,并使其如下:
# listen on all all interfaces?
#.ifdef MAIN_LOCAL_INTERFACES
#local_interfaces = MAIN_LOCAL_INTERFACES
#.endif
local_interfaces = <; ::0 ; 0.0.0.0
我重新启动了 exim,但没有任何变化。
所以,这就是我现在的情况。尽快修复这个问题对我来说很重要,所以如果您能告诉我我还可以检查什么,我将不胜感激。
附言由于评论无法提供正确的格式,因此我在这里回复:
lsof -i:25
:我不太确定我在寻找什么,但是这里是输出:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
exim4 12386 Debian-exim 3u IPv6 24476126 0t0 TCP *:smtp (LISTEN)
exim4 12386 Debian-exim 4u IPv4 24476127 0t0 TCP *:smtp (LISTEN)
聚苯硫醚根据这一页,我的 ISP 阻止了端口 25 的入站(和出站)。但是该页面是几个月前写的,问题今天(或者可能是昨天)才出现的,所以我有什么方法可以检查一下是否是这个问题吗?
答案1
不过,我还是不明白为什么它今天就停止工作了。
也许您的邮件服务器昨天很忙,所以 ISP 注意到了您滥用服务条款?
请注意,如果邮件运行在非标准端口上,那么向另一个端口发送邮件可能仍会与你的 ISP 条款相冲突,因此我不会给出明确的建议或推荐给你。
例如,做过收到来自我的 ISP 的一次有关“过多”传入和传出邮件的警告。
讨论这条规则的合法性是其他地方要做的事情。
不过,你可以在某处安装一个便宜的 VPS 来处理邮件。
如何处理这些邮件(直接在 VPS 上,或者在家里)是你的任务。
您的远程节点不一定需要运行自己的邮件服务器。使用邮件代理,例如nginx- 或者甚至是普通的 TCP 代理 - 也可以。
答案2
我遇到过类似的问题,但情况并不完全一样。我的邮件服务器一直被 Spamhaus 标记为垃圾邮件发送者。我检查了所有内容,包括端口 25 上的传出连接。
没有,什么也没有,什么也没有!
我尝试关闭邮件服务器。但 Spamhaus 仍报告了此问题。
关掉路由器……Spamhaus 不再标记!重新打开后,一小时内又被标记了。
路由器属于 ISP,所以我和他们谈了谈,你猜怎么着?他们不在乎。在抱怨了几次之后,他们做了唯一明智的事情(至少在他们看来是这样),他们封锁了 25 端口的传入。这确实阻止了垃圾邮件,但也使我的邮件服务器变得毫无用处。我向 ISP 投诉了几次,但他们并不关心。
幸运的是,我遇到了与这家 ISP 相关的其他问题,并且刚刚收到了一条新的(更便宜、更快的)入站线路。这条线路存在没有永久 IP 地址的问题,我通过定期自动更新 DNS 解决了这个问题。
随后,我在一家国际提供商处设置了一个廉价的虚拟服务器,并将其用于发送邮件和作为接收邮件的备份,以防我的主连接再次遭受端口 25 阻塞。使用托管服务器发送邮件的原因是,现在几乎每个人都会阻止来自他们认为是国内的 ISP 的接收邮件,或者这些 ISP 规模不够大,无法向主要邮件提供商提出足够的投诉。(谷歌、微软、Mimecast 和其他公司,你们听了吗???)