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

  • 1

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

Was this answer helpful?

« Back