在尝试为 Ubuntu 11 上的 dovecot 设置 SASL 时,我不断在日志中收到过时的警告:
Sep 10 15:33:53 server1 dovecot: config: Warning: Obsolete setting in
/etc/dovecot/dovecot.conf:24: passdb {} has been replaced by passdb { driver= }
Sep 10 15:33:53 server1 dovecot: config: Warning: Obsolete setting in
/etc/dovecot/dovecot.conf:27: userdb {} has been replaced by userdb { driver= }
尽管我的 dovecot.conf 文件如下所示:
protocols = none
auth default {
mechanisms = plain login
passdb {
driver=pam
}
userdb {
driver=passwd
}
socket listen {
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
}
即使我尝试:
driver=etc/pam.d/dovecot
driver=etc/passwd
我仍然遇到相同的错误。查看示例配置文件:
cat /usr/share/doc/dovecot-common/dovecot/example-config/dovecot.conf
没有帮助。Dovecot 正在运行:
ps -A | grep 'dovecot'
9663 ? 00:00:00 dovecot
但我似乎无法获得那个难以捉摸的“dovecot-auth”进程。有人知道发生了什么吗?
新的 dovecot.conf 文件:
# 2.0.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.0.0-12-server x86_64 Ubuntu 11.10
passdb {
driver = pam
}
passdb {
driver = pam
}
protocols = none
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
}
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
driver = passwd
}
userdb {
driver = passwd
}
答案1
尝试使用doveconf
将你的配置文件转换为 v2.x 格式:
doveconf -n -c /oldpath/dovecot.conf > /etc/dovecot/dovecot.conf.new