1

我在 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}}”

我以以下格式存储密码:用户名:{MD5}asddfasdlasdkandlanskfdaf

如何启用 AUTH 并正常工作?提前致谢。

4

2 回答 2

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. 
于 2015-05-26T09:36:39.870 回答
1

此错误消息的一个原因是发送 HELO 而不是 EHLO,或者以错误的顺序发送 EHLO。

但是,即使使用 EHLO,当服务器运行 Exim 时,也会出现此消息。

在我的服务器上,我找到了解决方案。在 WHM > 主页 > 服务配置 > Exim 配置管理器中,选项“要求客户端连接 SSL 或发出 STARTTLS 命令,然后才能通过服务器进行身份验证”设置为默认值 (On)。我不确定我是否这样做,这通常是一个安全的好主意,但强制邮件服务器仅启用(广告)STARTTLS 命令,而不是 AUTH。因此,当我的脚本发送 AUTH 时,服务器发送的错误消息是正确的。更多信息请参见 http://blog.networkpresence.co/?p=8923。有一天,当我有时间时,我会发现如何更改我的脚本以使用 TLS,这样我就可以打开 Exim 选项以确保安全。

于 2019-10-23T19:39:46.890 回答