我已为 ProFTPD 配置了 LDAP 配置,并修改了 modules.conf 文件以包含 LDAP 模块。但是,每次使用 FileZilla 登录时,我都会收到 530 登录不正确的错误。除了密码在本地和 LDAP 中定义的用户外,所有用户都会出现这种情况。完全相同的设置在 CentOS 服务器上运行良好,我已经尝试在清除配置文件后重新安装它。
答案1
您是否有适当的 /etc/pam.d 文件供 proftpd 使用以告诉它使用 LDAP?
目录 /usr/share/doc/libpam-ldap/examples/pam.d/ 中有示例。通常,您可以将它们全部复制到 /etc/pam.d/
然而,在 squeeze 中,你必须改变所有出现的“pam_unix_“到”pam_unix“,因为所有/lib/security/pam_unix_文件消失了,现在只有 /lib/security/pam_unix.so。如果您不进行这些更改并注销,您将无法重新登录,也无法通过控制台登录或任何其他方式登录。您必须启动救援 CD 并以这种方式进行更改。
因此,例如在 /usr/share/doc/libpam-ldap/examples/pam.d/ssh 中更改:
auth required /lib/security/pam_unix_auth.so try_first_pass
account required /lib/security/pam_unix_acct.so
session required /lib/security/pam_unix_session.so
到:
auth required /lib/security/pam_unix.so try_first_pass
account required /lib/security/pam_unix.so
session required /lib/security/pam_unix.so
ftp 文件(/usr/share/doc/libpam-ldap/examples/pam.d/ftp)如下所示:
#%PAM-1.0
auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
auth required /lib/security/pam_shells.so
auth sufficient /lib/security/pam_ldap.so
auth required /lib/security/pam_pwdb.so shadow nullok
account sufficient /lib/security/pam_ldap.so
account required /lib/security/pam_pwdb.so
#session sufficient /lib/security/pam_ldap.so
session required /lib/security/pam_pwdb.so