Ubuntu16.04系统下成功安装vsftpd后,远程登录时提示:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
根本原因在于,从vsftpd_2.3.5版开始,取消了根目录的可写权限。因此,网上的普遍解决方案是以下两种:
方案一
chmod a-w /vaf/ftp
方案二
vim /etc/vsftpd.conf add the following
allow_writeable_chroot=YES
看起来,貌似第二种方式是更完美,但当把allow_writeable_chroot=YES
配置项加入的时候,重启vsftpd服务的时候发现不能正常工作了(21端口无程序在监听),于是上网继续查找解决方案,有人说配置项是allow_writable_chroot(少了个e),还有说配置项是allow_writable_root(少了ch)的,经过测试,发现全都不行。后来总算找到一个可行的方法:
编辑配置文件
vim /etc/vsftpd.conf
chroot_local_user=YES
allow_writeable_chroot=YES
重启vsftpd
sudo systemctl restart vsftpd