作者:Saber木木-汐7rv | 来源:互联网 | 2014-05-28 09:06
根据上一篇《我见过最好的vsftpd配置教程》教程配置vsftpd时,在最后测试时出现530loginincrrect提示,无法登陆。查看日志tail-n20/var/log/secure有如下信息Oct2114:19:40wwwvsftpd:PAMunabletodlopen(/lib/security/pam_us
根据上一篇
《我见过最好的vsftpd配置教程》教程配置vsftpd时,在最后测试时出现530
login incrrect 提示,无法登陆。
查看日志 tail -n 20 /var/log/secure 有如下信息
Oct 21 14:19:40 www vsftpd: PAM unable to
dlopen(/lib/security/pam_userdb.so)
Oct 21 14:19:40 www vsftpd: PAM [error:
/lib/security/pam_userdb.so: wrong ELF class: ELFCLASS32]
Oct 21 14:19:40 www vsftpd: PAM adding faulty module:
/lib/security/pam_userdb.so
Oct 21 14:19:40 www vsftpd: pam_unix(vsftpd:auth): check pass; user
unknown
Oct 21 14:19:40 www vsftpd: pam_unix(vsftpd:auth): authentication
failure; logname= uid=0 euid=0 tty=ftp ruser=kanecruise
rhost=60.55.8.102
Oct 21 14:19:40 www vsftpd: pam_succeed_if(vsftpd:auth): error
retrieving information about user kanecruise
很明显是 /lib/security/pam_userdb.so这个载入失败。
我检查本地机器
pam.i386
0.99.6.2-6.el5_5.2
installed
pam.x86_64
0.99.6.2-6.el5_5.2
installed
两种都已经安装,到底是载入的哪个,哪个载入失败呢?
我机器是64位的,猜想应该是要载入pam.x86_64
cat /etc/pam.d/vsftpd
#%PAM-1.0
auth sufficient
/lib/security/pam_userdb.so
db=/etc/vsftpd/virtusers
account sufficient /lib/security/pam_userdb.so
db=/etc/vsftpd/virtusers
session optional pam_keyinit.so
force revoke
auth required pam_listfile.so item=user
sense=deny file=/etc/vsftpd/ftpusers Onerr=succeed
auth required pam_shells.so
auth include system-auth
account include system-auth
session include system-auth
session required pam_loginuid.so
就是这里 /lib/security/pam_userdb.so
文件载入失败,这个文件存在问题。
[root@www kanecruise]# ls /lib
lib/ lib64/
根目录存在此两个问题,尝试把lib改为
lib64并确认 /lib/security/pam_userdb.so 此文件存在。
auth sufficient
/lib64/security/pam_userdb.so
db=/etc/vsftpd/virtusers
account sufficient
/lib64/security/pam_userdb.so
db=/etc/vsftpd/virtusers
保存重启vsftpd服务。
重新测试,登陆成功了。