【安装】
sudo apt-get install vsftpd
【配置】
1、配置文件路径:/etc/vsftpd.conf
2、配置用户可以写权限:write_enable=YES
3、配置uMask:local_umask=022(默认为077,该种方式不支持断点续传,修改为022)
4、禁止匿名用户登录:anonymous_enable=NO
5、限制用户访问配置以外的路径:chroot_local_user=YES(这个配置是限制全部用户的,也可以限制部分用户)
6、配置用户的Home目录:local_root=/application/search/test
7、为系统新分配一个账号:test/test
【重启服务】
sudo service vsftpd restart
【Q&A】
1、Q:配置“chroot_local_user=YES”后,用户登录的时候会出现“500 OOPS: vsftpd: refusing to run with writable root”错误是什么原因?
A:这个是2.3.5-3版本新添加的一个规则,设定了chroot限制后,用户的根目录必须是只读的,将根目录设定权限为755即可。
2、Q、配置“chroot_local_user=YES”后,用户登录的时候会出现“500 OOPS: cannot change directory”错误是什么原因?
A、这个是因为用户的根目录设定的太严导致的,必须是755权限,user权限小于7的都会出现这个问题。
3、Q、按照上面说的,岂不是我不能配置一个可以写的,并且不允许用户访问根目录之外的设置了?
A、不是的,可以将根目录设置为755,然后在根目录下面新建一个目录,将该目录设置为777权限,这样用户就可以在这个新建目录下活动了。