500 OOPS: cannot change directory:/data/ftp
路坑记录
安装vsftpd,使用虚拟用户目录
创建本地用户useradd -d /data/ftp -s /sbin/nologin ftpuser
自定义用户目录local_root=/opt/ftp
创建完虚拟用户后,使用虚拟用户登录,一直显示”验证失败”
日志又没得显示,上网试了各种方式都不行
起初怀疑防火墙问题,但是经测试端口都是通的
后来用ftp客户端,连接120.0.0.1测试
显示
421 Service not available, remote server has closed connection
上网找了一通还是没解决
上网下载了fz客户端,再次登录显示
响应: 500 OOPS: cannot change directory:/data/ftp
这下有点清楚了。
再次上网查询,发现好多人设置的虚拟ftp目录都是ftp家目录下的,我这里设置的另一个完全无关的文件夹。
后来查文档发现,虚拟用户都是通过本地用户登录的,(虽然知道这个,但是当时没细想),会不会本地用户登录不上,家目录权限问题,灵光一闪,没有创建这家目录。
mkdir /data/ftp
再次登录,OK,登录成功。
所以,出现这个问题,也有可能是因为没有创建家目录导致的虚拟用户使用的本地用户登录不上,导致虚拟用户登陆失败。