关于vsftpd的530 Login incorrect错误

http://www.tsingpost.com/articles/201401/393.html

 

安装的vsftpd,  配置文件是根据以前整理的一个vsftpd.conf, 使用系统的用户来登陆ftp, 配置文件中有

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/usr/local/etc/vsftpd.chroot_list

默认把不允许访问上级目录的ftp用户卸载vsftpd.chroot_list下, 然后配置完毕, 新建立的ftp用户也可以正常登陆, 但是自从重启了一次vsftpd之后就怎么也无法登陆了… 一直报”530 Login incorrect”错误, 我就郁闷, google,baidu了半天, 最后终于找到一点思路, 似乎和pam有关系, 最后终于在老外的一个站上发现了:

关键点一:
Your vsftpd.conf should look like this:-

#anonymous_enable=YES
local_enable=YES
write_enable=YES
pam_service_name=vsftpd
userlist_enable=YES

Also check /etc/vsftpd/user_list and /etc/ftpusers

This will allow the local users to access their home directories via ftp

其实就是少了一行:

pam_service_name=vsftpd

关键点二

其他的解决思路:
1、被动模式的问题
2、有时候可能是主目录的问题,比如你的FTP主目录是/data/www,但是用户vsftpd的在/etc/passwd不是这个目录也会出问题,记住查看日志。(我的FTP报这个错是因为我把/etct/passwd下FTP用户的/sbin/nologin改成了/bin/bash,改回原来的禁止登录服务器就OK )

关键点三

在网上看到这问题还有一种原因是说服务器系统是64位的。
这种情况只需要把 /etc/pam.d/下面的vsftpd里面的/lib 修改为/lib64

cd /etc/pamd.d

vi vsftpd

然后保存退出

service vsftpd restart就ok

不过我的系统虽然是64位。但是却没有找到/lib这东西

再网上再找过一些资料后

发现

只需要把/etc/pam.d/vsftpd文件中的

auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed

这一句注释掉就OK了。前面加一个#好

重启vsftpd服务。

或者 把 auth required pam_shells.so 注释掉就好

关键点四

官网维护服务器后,FTP登录出现如下提示:
Login failure: 530 Login incorrect

求助在线客服未解决问题。

查看secure日志文件:
tail -f /var/log/secure

passwd: pam_unix(passwd:chauthtok): password changed for esoft
Jun 19 00:32:48 ip-72-16-9-18 vsftpd: pam_listfile(vsftpd:auth): Couldn’t open /etc/vsftpd/ftpusers
Jun 19 00:32:48 ip-72-16-9-18 vsftpd: pam_shells(vsftpd:auth): /etc/shells is either world writable or not a normal file

于是在root下执行:
cp /etc/vsftpd.ftpusers /etc/vsftpd/ftpusers
chomd 644 /etc/shell

你可能感兴趣的:(关于vsftpd的530 Login incorrect错误)