vsfftpd 530 login Login incorrect

  

vsftpd 530 Login incorrect这个问题很常见,网上一搜很多,但是绝大部分,都是忽悠人的。下面说一下我的解决办法,
服务器说明:服务器用的是centos 6.5 64 位,vsftpd用的是vsftpd: version 2.2.2,系统用户是nologin的

1, 检查/etc/vsftpd/vsftpd.conf配置

 代码如下 复制代码


local_enable=YES  
pam_service_name=vsftpd     //有人说ubuntu是pam_service_name=ftp(本人未测试)  
userlist_enable=YES 

2,修改/etc/vsftpd/ftpusers

 

 代码如下 复制代码
# vim /etc/pam.d/vsftpd   //你会发现,拒绝ftpusers里面的用户  
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed  

ftpusers里面是ftp默认拒绝的用户,如果要想系统用户,就把这个用户从ftpusers文件中删除。

 代码如下 复制代码

[root@node1 vsftpd]# cat /etc/vsftpd/ftpusers  
# Users that are not allowed to login via ftp  
root  
bin  
#daemon   //删除掉就能登录了  
adm  
lp  
sync  

。。。。。。。。。省略。。。。。。。。。  
在这里要注意,不要把/etc/pam.d/vsftpd里面的deny改成allow,不然你自己建立的用户就会报530 Login incorrect

3,重启vsftpd

 代码如下 复制代码
# /etc/init.d/vsftpd start 




在服务器(centos5.5)上搭建了一个vsftpd,本地用户死活不能登录上去。各种排查,最后在/var/log/secure中发现错误:

pam_shells(vsftpd:auth): /etc/shells is either world writable or not a normal file

查看了/etc/shells,发现权限为777,感觉不对,然后看了另一台服务器该文件的权限为644,于是修改777为644后,vsftp就本地用户就可以登录了。

    至于为什么/etc/shells不能为777,我还没有找到具体原因,个人觉得应该是系统安全上的考虑,就像vsftp的匿名用户的家目录权限不能为777一样。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值