我正在尝试让邮件服务器支持 IMAP-over-SSL 服务。我的网络内部一切正常:客户端可以在其电子邮件客户端配置中指定 SSL 和端口 993,并且邮件可以发送。但是,从外部看,它不起作用:某个地方,端口被阻止了。
Nmap 告诉我有关内部网络的信息:
[root@linux2 ~]# nmap -p993 192.168.0.4
Starting Nmap 5.21 ( http://nmap.org ) at 2011-04-18 09:54 PDT
Nmap scan report for example.com (192.168.0.4)
Host is up (0.00022s latency).
PORT STATE SERVICE
993/tcp open imaps
MAC Address: 00:1F:5B:35:F4:C8 (Apple)
对于外部网络:
[root@linux2 ~]# nmap -p993 xxx.xxx.xxx.xxx
Starting Nmap 5.21 ( http://nmap.org ) at 2011-04-18 09:54
PDT Nmap scan report for example.com (xxx.xxx.xxx.xxx)
Host is up (0.0023s latency).
PORT STATE SERVICE
993/tcp filtered imaps
所以,有人在进行过滤;问题是谁。我的路由器防火墙打开了 993;我还尝试过(短暂地)完全禁用路由器防火墙,但没有任何改善。我咨询了我的服务提供商(AT&T DSL),但他们说他们没有阻止它。
答案1
您确定正确地将端口从路由器转发到邮件服务器吗?
您的路由器是什么类型的?它运行 Linux 吗?如果是,请发布 的输出iptables -nvL -t nat | grep 993
。tcpdump -nli ethN port 993
在路由器上运行,将 ethN 替换为外部 NIC,并尝试从外部(而不是从 linux2)连接。如果您看到数据包进来但没有通过,请重复上述操作,将 ethN 替换为内部 NIC。这是确定它是否正确路由到您的邮件服务器的可靠方法。
如果不是 Linux,它是否有调试模式可以用来检查上述内容?
答案2
从外面跑过去tcptraceroute
看看连接在哪里被阻塞了。