我想在 centos 6.4 postfix 上安装带有 auth-smtp 的,我安装了 sasl
ps -ef | grep pam
root 3148 1 0 15:29 ? 00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam
root 3150 3148 0 15:29 ? 00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam
root 3151 3148 0 15:29 ? 00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam
root 3152 3148 0 15:29 ? 00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam
root 3153 3148 0 15:29 ? 00:00:00 /usr/sbin/saslauthd -m /var/run/saslauthd -a pam
root 3237 1276 0 16:20 pts/0 00:00:00 grep pam
但如果测试
testsaslauthd -u user -p pass
0: NO "authentication failed"
在 /var/log/messages 中
auth failure: [user=mardon] [service=imap] [realm=] [mech=pam] [reason=PAM auth error]
cat /etc/sasl2/smtpd.conf
pwcheck_method: saslauthd
mech_list: plain login
为什么 testsaslauthd 无法验证?
答案1
由于saslauthd
已配置为联系 PAM 身份验证框架,因此您必须指定额外的-s smtp
:
$ testsaslauthd -u user -p pass -s smtp
答案2
2016/03/31 我的 Fedora 15 也出现了类似的问题。通过在 /etc/init.d/saslauthd 中设置 FLAGS=-d 并重新启动它,我通过检查 /var/log/messages 发现 testsaslauthd 默认使用 imap 服务。作者想保留一些信息 :( 在我的系统上,saslauthd 也在 /etc/sysconfig/saslauthd 中配置为使用 PAM。我的系统上没有 /etc/pam.d/imap 文件。在我将 /etc/pam.d/smtp 复制到 imap 后,“问题”就解决了。当我在那里时,我确保还有一个 /etc/pam.d/pop。