只要我用我的虚拟用户在FTPlogin我得到“不能更改directoy”,我在vsftpd.conf中有以下configuration。 请build议
listen=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=002 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd pam_service_name=vsftpd virtual_use_local_privs=YES guest_enable=YES user_sub_token=$USER hide_ids=YES user_config_dir=/data/some-path/ftp/users local_root=/data/some-path/ftp/data/$USER guest_username=vsftpd
看起来为了使用户能够被chrootjoin到configuration的目录,所有的父目录必须具有读取和执行权限,否则由于安全原因它们将被拒绝。
我认为你的用户将被绑定到他们的主目录chroot_local_user =是,也许尝试设置你的ftp用户的主目录到/ data / some-path / ftp / data / $ USER,否则看看chroot_local_user = NO时会发生什么
这可能是一个SELinux问题,请尝试设置
/usr/sbin/setsebool -P ftp_home_dir 1
看看是否能解决这个问题。