centos 上的 saslauthd 无需身份验证

centos 上的 saslauthd 无需身份验证

我想在 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。

相关内容