Ric*_*d T 5 fedora dovecot sasl
从 Fedora Core 16 升级到 Fedora Core 21 后,新的 Dovecot 安装无法正确进行身份验证,而且根本不清楚原因。
我们有 50 多个电子邮件帐户由该服务器提供服务,因此我希望让以前的方案继续为人们服务。
多年来我们一直非常成功地使用 CRAM-MD5。我移动了配置,根据新版本(2.2.15-3)的需要进行了更新,并尝试连接。日志说:
Requested CRAM-MD5 scheme, but we have only CRYPT
Run Code Online (Sandbox Code Playgroud)
然而,当我按照 Dovecot 网站上的测试指南(可以在此处找到http://wiki2.dovecot.org/TestInstallation)时,测试命令显示 CRAM-MD5 确实可用:
# telnet localhost 143
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE
IDLE STARTTLS AUTH=CRAM-MD5 AUTH=DIGEST-MD5 AUTH=PLAIN AUTH=LOGIN]
Dovecot ready.
Run Code Online (Sandbox Code Playgroud)
可以看出,CRAM-MD5 是列出的第一个支持的授权类型。
此外,鸽舍参数测试程序也没有显示任何问题:
# dovecot -n
# 2.2.15: /etc/dovecot/dovecot.conf
# OS: Linux 3.17.4-301.fc21.x86_64 x86_64 Fedora release 21 (Twenty One)
auth_debug = yes
auth_debug_passwords = yes
auth_mechanisms = cram-md5 digest-md5 plain login
auth_verbose = yes
listen = *
login_trusted_networks = 192.168.1.4 192.168.1.5 192.168.1.6
192.168.1.12 192.168.1.14 192.168.1.10 127.0.0.1
mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u
mbox_write_locks = fcntl
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Trash {
special_use = \Trash
}
prefix =
}
passdb {
driver = passwd
}
quota_full_tempfail = yes
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
user = postfix
}
}
ssl = required
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
userdb {
driver = passwd
}
verbose_proctitle = yes
Run Code Online (Sandbox Code Playgroud)
我检查了cram-md5文件的权限是否与旧系统上的相同,等等。
非常感谢任何和所有的帮助。
...我最终发现文件所有权和权限详细信息已更改。而且,我在配置文件中也犯了一个小错误。
与许多软件包一样,新方案安装时附带示例,其中包含许多注释和注释行,提示您获取所需的配置。但是,我的旧配置文件中没有这样的行:
passdb {
args = /etc/cram-md5.pwd
driver = passwd-file
}
Run Code Online (Sandbox Code Playgroud)
当然,该文件不必被调用cram-md5.pwd
,也不必位于/etc中。但是,您必须在某个地方指向该文件!
然而,仅此还不够。
此外,旧安装的该文件完全归root
. 新安装希望该文件至少具有 的组所有权dovecot
以及对该文件的读写权限。
我刚刚选择了任何 ole passdb
“容器”并将这两行放入其中,突然它开始工作!
我仍然有一些功能无法正常工作,但这些是我以前从未使用过的配置选项(例如 tls security),因此目前没有人依赖这些功能!
归档时间: |
|
查看次数: |
3304 次 |
最近记录: |