我已经更改了我们的 exim 邮件服务器的 IP 地址(虚拟机已复制到不同的主机,并且网络配置正在使用 NAT)。现在它不再接受来自 Windows Thunderbird 客户端的 STARTTLS 连接。但它适用于所有其他邮件客户端。
Thunderbird 错误消息类似于can't set up a secure connection to mail.mydomain.de using STARTTLS, because the server is not offering this function. Disable STARTTLS or contact your provider
。但是 exim 邮件服务器确实提供了 STARTTLS,并且它仍然可以在旧系统上运行。
以下是 exim 调试日志的摘录:
27666 accept: condition test succeeded
27666 SMTP>> 220 s0107.mydomain.de ESMTP (Exim 4.77) Fri, 31 Oct 2014 05:23:27 +0100
27666 Process 27666 is ready for new message
27666 smtp_setup_msg entered
27666 SMTP<< EHLO [192.168.1.115]
27666 sender_fullhost = ip-123-123-123-123.hsi07.unitymediagroup.de ([192.168.1.115]) [123.123.123.123]
27666 sender_rcvhost = ip-123-123-123-123.hsi07.unitymediagroup.de ([123.123.123.123] helo=[192.168.1.115])
27666 set_process_info: 27666 handling incoming connection from ip-123-123-123-123.hsi07.unitymediagroup.de ([192.168.1.115]) [123.123.123.123]
27666 host in pipelining_advertise_hosts? yes (matched "*")
27666 host in auth_advertise_hosts? yes (matched "*")
27666 host in tls_advertise_hosts? yes (matched "*")
27666 SMTP>> 250-s0107.mydomain.de Hello ip-123-123-123-123.hsi07.unitymediagroup.de [123.123.123.123]
27666 250-SIZE 52428800
27666 250-PIPELINING
27666 250-AUTH PLAIN LOGIN CRAM-MD5
27666 250-STARTTLS
27666 250 HELP
27666 SMTP<< QUIT
27666 SMTP>> 221 s0107.mydomain.de closing connection
27666 LOG: smtp_connection MAIN
27666 SMTP connection from ip-178-200-216-217.hsi07.unitymediagroup.de ([192.168.1.115]) [123.123.123.123] closed by QUIT
27666 search_tidyup called
27654 child 27666 ended: status=0x0
27654 0 SMTP accept processes now running
27654 Listening...
在原始系统上,最后几行如下所示:
2362 250-SIZE 52428800
2362 250-PIPELINING
2362 250-AUTH PLAIN LOGIN CRAM-MD5
2362 250-STARTTLS
2362 250 HELP
2362 SMTP<< STARTTLS
2362 setting SSL CTX options: 0x800
2362 tls_certificate file /etc/pki/tls/exim_tls/exim.cert
2362 tls_privatekey file /etc/pki/tls/exim_tls/exim.key
...
这似乎是客户端问题,但我不知道 IP 地址更改为何会对 STARTTLS 握手产生影响。请提供意见。
答案1
您已确认,不仅仅是 IP 地址发生了变化:具体来说,虚拟机移动到的新网络位于 CISCO ASA 防火墙后面。
这些防火墙的作用是他们所描述的“协议修复“,在 SMTP 的情况下,这意味着弄乱在第 4 层传递的信息。通过telnet
从客户端到服务器发出SMTP EHLO
命令,您已确认尽管服务器正在宣传该STARTTLS
功能,但 CISCO 正在从正在传输的数据包中删除此广告。客户端没有看到STARTTLS
被提供,并且已配置为需要它,因此退出。
您没有说明 CISCO 是否在您的控制之下,但您已确定服务器上与端口 587 的连接不会受到类似影响(尽管我怀疑这是 CISCO 配置的问题,将来某些管理员可能会轻易打开它)。因此,至少目前您有一个解决方法。
思科为什么认为剥夺其所保护的邮件服务器的加密功能是个好主意,这对我来说是个谜。但结果是,这种模式下的思科在保护邮件服务器方面并不适合。