IIS 6 SMTP无法将邮件中继到Exchange Online

我们公司使用Office 365,我们的电子邮件在线上托pipe在Exchange上; 但是,由于各种原因,我们有几个应用程序无法直接将邮件发送到Exchange Online(主要是缺less对使用TLS进行身份validation的SMTP的支持); 因此,我们build立了几个使用IIS的SMTP组件的内部邮件中继, 他们每个人都使用不同的发件人地址,需要使用不同的用户帐户对Exchange Online进行身份validation,因此我们需要为每个应用程序提供SMTP中继。 这就是为什么我们有其中的几个,每一个都运行在服务器上,该服务器托pipe它需要中继消息的应用程序。 所有这些SMTP中继都以完全相同的方式configuration,只有用户帐户不同。

大多数这些SMTP中继在Windows Server 2008 R2或Windows Server 2012系统上运行; 但是,这些应用程序中的一个需要在Windows Server 2003系统上运行,因此其宿主在同一系统上的SMTP中继在IIS 6上运行。

以前一切工作都很好,直到前几天; 那么SMTP中继仅在Windows Server 2003系统上停止工作,而在所有其他系统上保持正常工作; SMTP日志显示出一个非常奇怪的行为:在AUTH命令发出后,看起来有些东西卡住了,然后远程服务器由于超时而丢弃连接:

2015-03-07 17:44:27 157.56.251.50 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 220+AMXPR07CA0050.outlook.office365.com+Microsoft+ESMTP+MAIL+Service+ready+at+Sat,+7+Mar+2015+17:44:38++0000 0 0 108 0 16 SMTP - - - - 2015-03-07 17:44:27 157.56.251.50 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 EHLO - <OurServerName> 0 0 4 0 32 SMTP - - - - 2015-03-07 17:44:27 157.56.251.50 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 250-AMXPR07CA0050.outlook.office365.com+Hello+[<OurPublicIPAddress>] 0 0 60 0 63 SMTP - - - - 2015-03-07 17:44:27 157.56.251.50 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 STARTTLS - - 0 0 8 0 63 SMTP - - - - 2015-03-07 17:44:27 157.56.251.50 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 220+2.0.0+SMTP+server+ready 0 0 27 0 94 SMTP - - - - 2015-03-07 17:44:30 157.56.251.50 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 EHLO - <OurServerName> 0 0 4 0 2829 SMTP - - - - 2015-03-07 17:44:30 157.56.251.50 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 250-AMXPR07CA0050.outlook.office365.com+Hello+[<OurPublicIPAddress>] 0 0 60 0 2860 SMTP - - - - 2015-03-07 17:44:30 157.56.251.50 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 AUTH - - 0 0 4 0 2860 SMTP - - - - 2015-03-07 17:49:31 157.56.251.50 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 451+4.7.0+Timeout+waiting+for+client+input 0 0 42 0 303875 SMTP - - - - 2015-03-07 17:49:31 132.245.226.242 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 220+DB4PR06CA0004.outlook.office365.com+Microsoft+ESMTP+MAIL+Service+ready+at+Sat,+7+Mar+2015+17:49:43++0000 0 0 108 0 62 SMTP - - - - 2015-03-07 17:49:31 132.245.226.242 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 EHLO - <OurServerName> 0 0 4 0 62 SMTP - - - - 2015-03-07 17:49:31 132.245.226.242 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 250-DB4PR06CA0004.outlook.office365.com+Hello+[<OurPublicIPAddress>] 0 0 60 0 109 SMTP - - - - 2015-03-07 17:49:31 132.245.226.242 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 STARTTLS - - 0 0 8 0 109 SMTP - - - - 2015-03-07 17:49:31 132.245.226.242 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 220+2.0.0+SMTP+server+ready 0 0 27 0 156 SMTP - - - - 2015-03-07 17:49:34 132.245.226.242 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 EHLO - <OurServerName> 0 0 4 0 2609 SMTP - - - - 2015-03-07 17:49:34 132.245.226.242 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 250-DB4PR06CA0004.outlook.office365.com+Hello+[<OurPublicIPAddress>] 0 0 60 0 2656 SMTP - - - - 2015-03-07 17:49:34 132.245.226.242 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 AUTH - - 0 0 4 0 2656 SMTP - - - - 2015-03-07 17:54:34 132.245.226.242 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 451+4.7.0+Timeout+waiting+for+client+input 0 0 42 0 303015 SMTP - - - - 2015-03-07 17:54:34 157.56.254.178 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 220+DBXPR05CA0038.outlook.office365.com+Microsoft+ESMTP+MAIL+Service+ready+at+Sat,+7+Mar+2015+17:54:46++0000 0 0 108 0 47 SMTP - - - - 2015-03-07 17:54:34 157.56.254.178 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 EHLO - <OurServerName> 0 0 4 0 47 SMTP - - - - 2015-03-07 17:54:34 157.56.254.178 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 250-DBXPR05CA0038.outlook.office365.com+Hello+[<OurPublicIPAddress>] 0 0 60 0 94 SMTP - - - - 2015-03-07 17:54:34 157.56.254.178 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 STARTTLS - - 0 0 8 0 94 SMTP - - - - 2015-03-07 17:54:34 157.56.254.178 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 220+2.0.0+SMTP+server+ready 0 0 27 0 140 SMTP - - - - 2015-03-07 17:54:37 157.56.254.178 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 EHLO - <OurServerName> 0 0 4 0 2640 SMTP - - - - 2015-03-07 17:54:37 157.56.254.178 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 250-DBXPR05CA0038.outlook.office365.com+Hello+[<OurPublicIPAddress>] 0 0 60 0 2672 SMTP - - - - 2015-03-07 17:54:37 157.56.254.178 OutboundConnectionCommand SMTPSVC1 <OurServerName> - 0 AUTH - - 0 0 4 0 2672 SMTP - - - - 2015-03-07 17:59:37 157.56.254.178 OutboundConnectionResponse SMTPSVC1 <OurServerName> - 0 - - 451+4.7.0+Timeout+waiting+for+client+input 0 0 42 0 303703 SMTP - - - - 

这只发生在Windows Server 2003上运行在IIS 6上的SMTP中继上; 在Windows Server 2008 R2或Windows Server 2012系统上运行的所有其他SMTP中继上,一切正常。

怀疑特定的服务器(这已经是众所周知的几个)的一些问题,我们build立了一个新的Windows Server 2003机器为了移动应用程序; 但是, 新的服务器performance出完全相同的行为 :在发出AUTH命令之后,出站SMTP对话将停止并出现相同的错误。

出于好奇,我们尝试在服务器上的Outlook Express中configuration相同的帐户; 它工作正常 ,它可以发送电子邮件使用通过身份validationSMTP与TLS到Exchange Online; 这个问题似乎只影响IIS的SMTP组件,而且似乎并不涉及networking,操作系统或其他任何东西。

什么可能导致这样的错误,我们如何解决它?

(我们知道我们不应该再使用Windows Server 2003;但是,应用程序只能在那里运行,它必须继续工作,直到它可以被replace。我们也知道我们可以将SMTP中继移动​​到另一个服务器运行一个更新的操作系统,但它会很好find为什么SMTP中继只能在IIS 6上失败。)

确保用于连接到Office 365的帐户的密码仍然有效,密码未被重置或过期。

MS订阅多个黑名单,如果你在这里IP,它将拒绝来自该IP的连接尝试。 你也不能绕过这个,你必须去掉IP,或者使用不同的IP来发送邮件。

当然 – 确保它不是导致你的问题的本地防火墙,策略或者更新你的A / V。 您可以通过确保您可以将来自此服务器的消息发送到您的其他工作中继盒之一来执行此操作。 如果从来没有把它从盒子里拿出来,你知道问题是本地的。

我们从来没有能够做到这一点,虽然它曾经工作得很好 , 我们支持将SMTP中继移动​​到运行Windows Server 2008 R2的另一台(虚拟)服务器; 那工作无懈可击。

我的猜测是:Exchange Online中的某些内容无法正常工作(使用IIS 6中的SMTP组件)。随着Windows Server 2003完全退出支持,唯一的select是将其replace。