![无法使用 PAM 身份验证进行 SMTP 连接](https://linux22.com/image/547653/%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8%20PAM%20%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81%E8%BF%9B%E8%A1%8C%20SMTP%20%E8%BF%9E%E6%8E%A5.png)
我正在尝试为 SMTP 客户端连接设置 PAM 身份验证。因此,要对 SMTP 进行身份验证以发送邮件,请使用与登录主机相同的方式。
日志显示:
2011-04-28 20:19:31 plain_pam authenticator failed for xxxx ([x.x.x.x]) [x.x.x.x]: 535 Incorrect authentication data (set_id=user)
2011-04-28 20:19:33 login_pam authenticator failed for xxxx ([x.x.x.x]) [x.x.x.x]: 535 Incorrect authentication data (set_id=user)
/etc/pam.d/exim:
auth required pam_unix.so
account required pam_permit.so
session required pam_permit.so
有什么提示可以查看或激活一些跟踪信息来查看哪里出了问题?
答案1
以什么用户身份运行 exim 并且该用户可以读取/etc/pam.d/exim
和/etc/shadow
(假设您/etc/nsswitch.conf
有files
和passwd
)shadow
。
答案2
在 Debian 机器上,就我而言,我必须将 exim4 用户添加到shadow
组中。
usermod -a -G shadow Debian-exim
PAM:在 Debian 系统上,PAM 模块以与调用程序相同的用户身份运行,因此它们无法执行您自己无法执行的任何操作,尤其是无法访问 /etc/shadow,除非用户处于组影子中。- 如果您想将 /etc/shadow 用于 Exim 的 SMTP AUTH,则需要将 exim 以组影子身份运行。只有 exim4-daemon-heavy 与 libpam 链接。我们建议改用 saslauthd。
http://lira.no-ip.org:8080/doc/exim4-base/README.Debian.html