我在Webmail Lite中遇到此错误。
我安装了Exim。以下是auth块的片段: PLAIN:
driver = plaintext
server_set_id = $auth2
server_prompts = :
.ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
.endif
server_condition = “${if crypteq{$auth3}{${extract{1}{:}{${lookup{$auth2}lsearch{/etc/$domain/passwd}{$value}{*:*}}}}}{1}{0}}”
我将passwd存储为以下格式: 用户名:{MD5} asddfasdlasdkandlanskfdaf
如何启用AUTH并正常工作? 提前谢谢。
答案 0 :(得分:1)
在我的情况下,此错误不会定期发生。有时它会工作但有时会出现此错误。(SMTP错误:无法进行身份验证。)
我调试了这个然后我发现了这个
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "503 AUTH command used when not advertised "
SMTP -> get_lines(): $data is "503 AUTH command used when not advertised "
SMTP -> FROM SERVER:503 AUTH command used when not advertised
SMTP -> ERROR: RSET failed: 503 AUTH command used when not advertised
SMTP Error: Could not authenticate.
答案 1 :(得分:0)
此错误消息的一个原因是发送HELO而不是EHLO,或者发送EHLO的顺序错误。
但是,当服务器运行Exim时,即使使用EHLO,也会出现此消息。
在我的服务器上,找到了解决方案。在WHM>主页>服务配置> Exim中 配置管理器,选项“要求客户端使用SSL连接 或在允许他们进行身份验证之前发出STARTTLS命令 与服务器”设置为默认值(On)。我不确定是否这样做 还是不,这通常是个安全的好主意,但是却迫使 mailserver仅启用(广告)STARTTLS命令,而不启用AUTH。所以 当我的脚本发送AUTH时,服务器发送的错误消息是正确的。 有关更多信息,请访问http://blog.networkpresence.co/?p=8923。 有一天我有时间会发现如何更改脚本以使用 TLS,因此为了安全起见,我可以将该Exim选项打开。