VSFTPD 500 OOPS:无法更改目录

VSFTPD 500 OOPS:无法更改目录

错误:

Response:   500 OOPS: cannot change directory:/home/visitor
Error:  Critical error: Could not connect to server

用户是visitor,组是ftpuseronlygroup

grep 访客 /etc/passwd

visitor:x:1000:1001::/home/visitor:/sbin/nologin

chown visitor:ftpusersonlygroup /home/visitor
chmod 777 /home/visitor
chmod -R ugo+rwx /home/visitor

文件夹权限 /home/visitor

总计12K`

drwxrwxrwx  3 visitor ftpusersonlygroup  69 Oct  3 20:10 .
drwx------. 3 root    root               20 Oct  3 20:04 ..
-rwxrwxrwx  1 visitor visitor            18 Aug  2 16:00 .bash_logout
-rwxrwxrwx  1 visitor visitor           193 Aug  2 16:00 .bash_profile
-rwxrwxrwx  1 visitor visitor           231 Aug  2 16:00 .bashrc
drwxrwxrwx  2 visitor ftpusersonlygroup   6 Oct  3 20:19 www

vsftpd.conf

local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=10100

SFTP 可以工作,但 FTP 不行,没有防火墙,如下测试所示 21/tcp open ftp vsftpd 3.0.2

FTP日志

Mon Oct 3 21:41:46 2016 [pid 26091] CONNECT: Client "XX.XXX.XX.XXX" 
Mon Oct 3 21:41:46 2016 [pid 26090] [visitor] OK LOGIN: Client

“XX.XXX.XX.XXX”

组访客用户属于 0f 部分

visitor : visitor ftpusersonlygroup

SELinux 已禁用

getenforce Disabled

还有其他想法吗?

答案1

将用户主目录(/home在本例中)的父目录设置为 755 权限而不是 700 - vsftpd 用户(在本例中为访问者)也需要能够浏览此目录。

答案2

以下是我在我的案例中解决这个问题的方法:

当我这样做时:

cd /var/www/vhosts/
usermod -d example.com usernameexample

我收到错误:

500 OOPS: can not change directory

然后当我这样做时:

usermod -d /var/www/vhosts/example.com usernameexample

问题解决了,我没有再收到错误。

相关内容