创buildDovecot Master用户/密码不起作用

几个小时以来,我一直在嘲笑我。 我想创build一个可以访问所有dovecot账户的主用户。 我已经按照dovecot网站上的教程,但是,它仍然说“身份validation失败”或“等待身份validation过程回应”,它永远不会工作。 我可能在这里做错了什么? 谢谢

//dovecot.conf

# 2.0.16: /usr/local/etc/dovecot/dovecot.conf # OS: FreeBSD 8.2-RELEASE amd64 auth_master_user_separator = * disable_plaintext_auth = no mail_location = maildir:~/Maildir namespace { inbox = yes location = prefix = INBOX. separator = . type = private } passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf driver = sql } passdb { args = /usr/local/etc/dovecot/passwd.master driver = passwd-file master = yes } protocols = imap pop3 service auth { client_limit = 6000 } service imap { process_limit = 2048 vsz_limit = 1256 M } service pop3 { process_limit = 2048 } userdb { args = /usr/local/etc/dovecot/dovecot-sql.conf driver = sql } userdb { driver = passwd } protocol pop3 { pop3_uidl_format = UID%u-%v } --> as instructed from http://wiki.dovecot.org/Authentication/MasterUsers 

猫passwd.master

 master:{SHA}E9RIKlmYWisBS3ObR16GwKUZNZg= 

telnet localhost 143

  Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. a login loginuser*master mypassword * OK Waiting for authentication process to respond.. * OK Waiting for authentication process to respond.. * BYE Disconnected for inactivity. Connection closed by foreign host. 

要么

 telnet localhost 143 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN 1 login loginuser*master mypassword 1 NO [AUTHENTICATIONFAILED] Authentication failed. * BYE Disconnected for inactivity. Connection closed by foreign host. 

// dovecot -n

 # 2.0.16: /usr/local/etc/dovecot/dovecot.conf # OS: FreeBSD 8.2-RELEASE amd64 auth_master_user_separator = * disable_plaintext_auth = no login_greeting = CFI mail server ready. mail_location = maildir:~/Maildir namespace { inbox = yes location = prefix = INBOX. separator = . type = private } passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf driver = sql } passdb { args = /usr/local/etc/dovecot/passwd.master driver = passwd-file master = yes } protocols = imap pop3 service auth { client_limit = 6000 } service imap { process_limit = 2048 vsz_limit = 1256 M } service pop3 { process_limit = 2048 } userdb { args = /usr/local/etc/dovecot/dovecot-sql.conf driver = sql } userdb { driver = passwd } protocol pop3 { pop3_uidl_format = UID%u-%v } 

终于搞定了! 首先,我必须auth_master_user_separator = +而不是“ ”。 这删除了dovecot对auth_username_chars不允许用户名字符的投诉:0x2a(username:loginuser master)“

然后意识到我使用htpasswd命令将错误文件/usr/local/etc/dovecot/dovecot.master添加了主密码logging,但在我的configuration中,正确的文件是/usr/local/etc/dovecot/passwd.master。 我不知道我怎么看不到这么快。

最后,我没有使用telnettesting主用户login。 我正在使用“1loginloginuser +主mypassword”而不是“[email protected]+master mypassword”

最后,我在dovecot.conf中的configuration看起来像

 auth_master_user_separator = + #auth_username_chars = * #dovecot complains about the “*” character auth_verbose = yes auth_debug = yes auth_debug_passwords = yes passdb { driver = passwd-file args = /usr/local/etc/dovecot/passwd.master master = yes #pass = yes } passdb { #driver = shadow driver = pam } userdb { driver = passwd }