Postfix

Dovecot 停止,配置文件中沒有指定 passdbs 錯誤

  • July 20, 2022

我正在使用 Dovecot 和 Postfix,但最近我嘗試使用 Postfixadmin(遵循此引用)。無論 Postfixadmin 是否正常工作,當有人嘗試使用現有電子郵件帳戶通過 Outlook 或 Thunderbird 登錄時,Dovecot 服務會停止並出現以下錯誤:

Jul 20 16:12:41 email-server systemd[1]: Started Dovecot IMAP/POP3 email server.
Jul 20 16:12:41 email-server dovecot[28856]: master: Dovecot v2.3.4.1 (f79e8e7e4) starting up for imap, lmtp, imap, lmtp (core dumps disabled)
Jul 20 16:12:56 email-server dovecot[28858]: auth: Debug: Loading modules from directory: /usr/lib/dovecot/modules/auth
Jul 20 16:12:56 email-server dovecot[28858]: auth: Debug: Module loaded: /usr/lib/dovecot/modules/auth/lib20_auth_var_expand_crypt.so
Jul 20 16:12:56 email-server dovecot[28858]: auth: Debug: Module loaded: /usr/lib/dovecot/modules/auth/libdriver_mysql.so
Jul 20 16:12:56 email-server dovecot[28858]: auth: Fatal: No passdbs specified in configuration file. LOGIN mechanism needs one
Jul 20 16:12:56 email-server dovecot[28856]: master: Error: service(auth): command startup failed, throttling for 2 secs
Jul 20 16:12:56 email-server dovecot[28858]: imap-login: Disconnected: Auth process broken (disconnected before auth was ready, waited 0 secs): user=<>, rip=187.208.178.229, 
Jul 20 16:12:56 email-server dovecot[28858]: imap-login: Warning: Timeout leak: 0x7f112d1aa730 (auth-server-connection.c:397)

無論我的/etc/dovecot/conf.d/auth-sql.conf.ext文件已經包含以下程式碼,我的 Dovecot 都會繼續崩潰並出現相同的錯誤:

passdb {
 driver = sql
 args = /etc/dovecot/dovecot-sql.conf.ext
}

userdb {
 driver = sql
 args = /etc/dovecot/dovecot-sql.conf.ext
}

您編輯的文件/etc/dovecot/conf.d/auth-sql.conf.ext,可選地包含在另一個配置文件/etc/dovecot/conf.d/10-auth.conf中,通常被註釋掉但可以被啟動。預設dovecot.conf僅包括以 結尾的附加配置文件.conf.ext片段文件通常是這些.conf文件的可選組件或副檔名。

註釋掉其他不需要的與身份驗證相關的包含,並使註釋的包含語句 ( #!include ..) 成為真正的包含 ( !include ..)


當不確定任何配置文件解釋時,使用doveconf列印有效配置,這應該澄清文件內容和 Dovecot 程序行為之間的任何感知不匹配。

引用自:https://serverfault.com/questions/1106125