Sivo 悉见

500 OOPS: vsftpd: refusing to run with writable root inside chroot()

匿名 · 更新于 2015/6/17

今天把vsftpd升级到了v2.3.5,配置文件还是使用原来的.允许本地用户登录ftp,并且使用chroot限制ftp根目录.启动登录之后发现如下错误:

  1. 500 OOPS: vsftpd: refusing to run with writable root inside chroot()

意思是不能使用chroot限制可写的根目录,看了下vsftpd的更新日志:

  1. Add stronger checks for the configuration error of running with a writeable root directory inside a chroot(). This may bite people who carelessly turned on chroot_local_user but such is life.

好吧,我们如果启用chroot,必须保证ftp根目录不可写,这样对于ftp根直接为网站根目录的用户不方便,所以建议假如ftp根目录是/home/centos,那么网站结构可以这样分,/home/centos/log为日志目录,/home/centos/web为网站根目录,这样我们就可以去掉/home/centos目录的写入权限而不影响网站的正常运行

  1. chmod a-w /home/centos

编译了最新版本的vsftp,出现“500 OOPS: vsftpd: refusing to run with writable root inside chroot ()”错误,并且用户无法锁定在自己的目录中。
 
#vi /etc/vsftpd.conf
添加 allow_writeable_chroot=YES
 
保存退出
重启vsftp服务,即可正常登录.