Exchange在编程语言或者通过telnet使用smtp发送邮件提示“504 5.7.4 Unrecognized authentication type”,在http://www.advancedintellect.com/post/2011/03/02/Exchange-2010-and-SMTP-settings.aspx页面找到答案。原因是由于Exchange2012默认不再开启AuthLogin认证协议(Exchange2007是开启的),只要配置Exchange2012服务器开启AuthLogin支持就可以了。 下面是摘抄的解决方法:

There are 2 ways to resolve this.
a) In the code, tell aspNetEmail to use the NTLM authentication scheme. In this instance, the customer didn't want to touch the code base. So they decided for option (b), which was:
b) Enable AuthLogin authenticaton on Exchange. To do this:
In the Exchange console under server configuration:
   Select hub transport.
   Right click  the client server and select properties.
   Select the authentication tab.
   Check the Basic Authentication checkbox.
   Uncheck the Offer Basic only after TLS

You may have to restart the Exchange services.


按上面方式修改并重启Exchange服务解决此问题 修改前:
telnet mail.aiezu.com 25
220 mail.aiezu.com Microsoft ESMTP MAIL Service ready at Wed, 8 Jan 2014 10:35:30 +0800
HELO mail.aiezu.com
250 mail.aiezu.com Hello [118.244.xx.xx]
AUTH LOGIN
504 5.7.4 Unrecognized authentication type

修改后:
telnet mail.aiezu.com 25
220 mail.aiezu.com Microsoft ESMTP MAIL Service ready at Wed, 8 Jan 2014 10:35:30 +0800
HELO mail.aiezu.com
250 mail.aiezu.com Hello [118.244.xx.xx]
AUTH LOGIN
334 VXNlcm5hbWU6