vsftpd:拒绝在chroot里面写可写根目录

我想设置一个匿名的FTP服务器(能够上传文件)。 这是我的configuration文件:

listen=YES anonymous_enable=YES anon_root=/var/www/ftp local_enable=YES write_enable=YESr. anon_upload_enable=YES anon_mkdir_write_enable=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES dirmessage_enable=YES use_localtime=YES secure_chroot_dir=/var/run/vsftpd/empty rsa_cert_file=/etc/ssl/private/vsftpd.pem pam_service_name=vsftpd 

但是,当我尝试连接它:

 kan@kan:~$ ftp yxxxng.bej Connected to yxxx. 220 (vsFTPd 2.3.5) Name (yxxxg.bej:kan): anonymous 331 Please specify the password. Password: 500 OOPS: vsftpd: refusing to run with writable root inside chroot() Login failed 

谁能帮忙?

这里的博客指出了如何解决这个问题。

http://www.mikestechblog.com/joomla/operating-systems-section/operating-systems-ubuntu/155-500-oops-vsftpd-refusing-to-run-with-writable-root-inside-chroot.html

问题是用户的根目录是可写的。 Frontier Group为您提供了vsFTPd的修复。

这里是要采取的步骤(从教程复制粘贴,万一链接死亡)

  1. 以root身份登录(或sudo ..)并执行以下操作:

  2. apt-get install python-software-properties

  3. sudo add-apt-repository ppa:thefrontiergroup / vsftpd

  4. sudo apt-get update

  5. sudo apt-get install vsftpd

  6. vi /etc/vsftpd.conf并添加下面的allow_writeable_chroot = YES

  7. sudo服务vsftpd重启