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
Last modification:April 13, 2020
如果觉得我的文章对你有用,请随意赞赏