Error: 500 OOPS: vsftpd: refusing to run with writable root inside chroot() [SOLVED]

September 8, 2019
Pre-Flight Check
  • These instructions are intended specifically for solving the error: 500 OOPS: vsftpd: refusing to run with writable root inside chroot().
  • I’ll be working from a Web Self Managed Fedora 20 server, and I’ll be logged in as root.

The Fix

This error may occur when attempting to connect to a vsftpd FTP server that is configured to jail (prevent from accessing other directories) each FTP user. It is best practice to create Linux users specifically for FTP, that can’t login via SSH. For example, if you wanted to remove SSH access for testuser, then you’d use the following command:

usermod -s /sbin/nologin testuser

However, that won’t address the problem listed in the error. To do that, you must make the user’s home directory read only. Assuming the username is testuser and the home directory is /home/testuser, then execute the following command:

chmod a-w /home/testuser

For good measure, be sure to restart vsftpd:

systemctl restart vsftpd

Alternative Fix

Alternatively, you can bypass the writable check in the vsftpd config file by running the following two commands:

echo 'allow_writeable_chroot=YES' >> /etc/vsftpd/vsftpd.conf

systemctl restart vsftpd

Article Tags:
· · · · ·
Article Categories:
How To

Comments are closed.