8

I installed vsFTPd for running an FTP server on Debian 7.3 (Wheezy). I checked the vsFTPd version was 2.3.5, and I configured it like so:

listen=YES
local_enable=YES
write_enable=YES
chroot_local_user=YES
pasv_min_port=15000
pasv_max_port=15200
allow_writeable_chroot=YES

I followed these articles for solving this problem:

And many others on Google and forums, but my problem was not solved.

NOTE: I have solved this problem on Ubuntu 12.04 (Precise Pangolin), but that solution does not work on Debian 7.3.

I really mixed up on it?!

2
  • Both links seem to be broken (timeout and 404, respectively). Sep 29, 2018 at 12:33
  • @PeterMortensen, I'm sorry, this answer is too old so those links are broken by their provider. So, I can't do any thing for them.
    – shgnInc
    Sep 30, 2018 at 13:24

3 Answers 3

9

I searched for it toooooooooo much, and I really mixed up, so I decided to change vsFTPd to SFTP or something else, till I found a link about this bug.

Then I found out this problem was solved in vsFTPd version 3. So I searched how to upgrade it and could find to add the jessie repository to my Debian 7.3 installation and upgrade it so:

echo "deb http://ftp.us.debian.org/debian jessie main contrib non-free" >> /etc/apt/sources.list
aptitude update
aptitude upgrade vsftpd
echo "allow_writeable_chroot=YES" >> /etc/vsftpd.conf
service vsftpd restart

Now it works correctly for me.

2
  • You are right about the Jessie thing but I would not suggest people to just add a Jessie repository to Wheezy. It also wants to update libc and there is a good chance to destroy your disitribution that way.
    – John
    Oct 29, 2015 at 2:19
  • Note that the vsftpd package is Free as in Freedom software, so the first command adding the contrib and non-free repositories is completely unrelated. Just an apt update and apt upgrade and enabling that option is enough. Jun 29, 2020 at 15:11
2

Just add

seccomp_sandbox=NO

to the configuration and restart the service with service vsftpd restart

Then "allow_writeable_chroot=YES" will work also with newer vsFTPd versions (found in 500 OOPS: vsftpd: refusing to run with writable root inside chroot() Keep user jailed).

1
  • 1
    For me it was enough to just add allow_writeable_chroot=YES to /etc/vsftpd.conf
    – Black
    Nov 29, 2019 at 10:47
0

From the default vsftpd.conf:

Warning! chroot'ing can be very dangerous. If using chroot, make sure that the user does not have write access to the top level directory within the chroot

That's why your solution should not involve allow_writeable_chroot=YES when applicable. Instead, refactor your filesystem in order to avoid writable FTP top level directories.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.