configurationexim4以将Microsoft Exchange用作smarthost

我的公司最近设置了一个Active Directory驱动的Microsoft Exchange环境来整合传出的邮件。 我们有一套临时服务器,现在应该使用我们的MSEXCHG作为传出邮件的智能主机。

这些服务器位于DMZ中,这就是为什么在Exchange 2010 smarthost身份validation中使用upvoted解决scheme的原因? 不是一种替代scheme,因为我们不能允许DMZ中的服务器通过我们的Exchange服务器发送邮件。

我们在MSEXCHG中所做的事情:

我们在exim4 (8)做的事情:

  • 使用update-exim4.conf (8) (比较exim4_files (5) ),我们configuration了exim使用exchange.contoso.com:587作为智能主机。
  • 在passwd.client( exim4_files (5) )中,我添加了以下行: exchange.contoso.com:[email protected]:secret123 : exim4_files (5)

在使用上述configuration启动exim之后,我在mainlog中得到以下两个TLS错误:

  • TLS error on connection to ex.contoso.com [192.168.1.8] (recv): A TLS packet with unexpected length was received.
  • TLS error on connection to ex.contoso.com [192.168.1.8] (send): The specified session has been invalidated for some reason.

然后,我们的MSEXCHG拒绝发送邮件,并显示以下(最终)日志条目:

** [email protected] R=smarthost T=remote_smtp_smarthost: SMTP error from remote mail server after MAIL FROM:<[email protected]> SIZE=1538: host ex.contoso.com [192.168.1.8]: 530 5.7.1 Client was not authenticated

更多的东西我已经尝试过了

  • MAIN_TLS_ENABLE = 1放入exim4.conf.localmacros ( http://blog.xig.ch/Exim-Smarthost-mit-Authentifizierung-%FCber-STARTTLS_127.html )
  • https://askubuntu.com/questions/167043/how-do-i-configure-exim4-to-send-mail-through-a-password-protected-ssl-smtp-mail中描述的步骤

所以,强制性的问题:我们如何能够使用我们的MSEXCHG环境作为智能主机?

贵组织是否为内部服务器运行自己的证书颁发机构? 也许您需要将Exchange服务器的CA证书添加到Exim的证书信任存储中? 很多产品都不会很好地报告这个错误(我不知道Exim是否会)。

Wireshark(使用tcpdump -p -s0 -w /tmp/foo.pcap首先在服务器上捕获,然后使用Wireshark复制到本地工作站)应该能够显示从Exchange发送的服务器证书,如果客户端在此之后挂起,那么缺lessCA证书是常见原因。

我们的问题是相当具体的我们的设置。 我们有一个以上的Exchange服务器与作为AP的负载均衡器并行运行。 LB被错误地configuration,导致它忽略了即使在成功的STARTTLS握手之后提供任何authentication方法栏NTLMGSSAPI

通过swaks jetmore.org进行深入testing(可以高度推荐这个工具)揭示了这一点。

问题是由于TLS证书。 解决程序:

安装openssl(如果缺失)

sudo apt-get install openssl

生成自我证书

sudo / usr / share / doc / exim4-base / examples / exim-gencert

将TLS添加到主SMTP

sudo nano /etc/exim4/exim4.conf.localmacros

或者select你的默认.conf文件

main_tls_enable = '1'