我试图configuration一个Sophos Appliance(SEA)来处理反垃圾邮件。 这项服务的一部分是收件人validation,它询问下游MTA(在我们的例子中是Exchange 2010)中的有效收件人。
看起来像这样有一个问题,有关Exchange 2010不正确处理stream水线SMTP命令。
SMTP会话如下所示:
Escape character is '^]'. 220 <my domain> Microsoft ESMTP MAIL Service ready at Sun, 16 Nov 2014 14:07:15 +1100 EHLO <valid domain> 250-<my downstream server Hello [<an ip>] 250-SIZE **250-PIPELINING** 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-AUTH 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250-XEXCH50 250 XSHADOW
然后,为了validation接收者,SEA在单个分组中发送以下内容(由分组跟踪validation)
MAIL FROM:<a temp but valid email> SIZE=278 RCPT TO:<validrecipient> ORCPT=rfc822;validrecipient RSET QUIT
但是,Exchange服务器似乎忽略了前3个命令,只响应QUIT
221 2.0.0 Service closing transmission channel
现在,在此期间,我可以closures中间收件人validation,但更紧迫的问题是为什么Exchange不能正确支持stream水线。 一个想法是RFC2920,第4节,build议没有参数可以添加到MAIL FROM命令stream水线正常工作。
我想知道这是不是? 我会手动testing,但其他build议会很好。
谢谢
我只是在接收连接器上禁用stream水线来解决这个问题,结果令人满意。 除非另有说明,否则我将认为这是Microsoft在Exchange 2010中实施stream水线实施/ ESMTP时的一个错误。
这也发生在我身上,禁用stream水线为我工作。
Set-ReceiveConnector "Connector Name" -PipeliningEnabled $false
对我来说,发件人正在stream水Mail From , Rcpt To ,然后Data 。 Exchange 2010将回复Mail From ,而不是data ,发件人将收到“超时”回复。