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

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

  • 1 Users Found This Useful
Was this answer helpful?

Related Articles

How to List Compiled PHP Modules from Command Line

Pre-Flight Check These instructions are intended specifically for listing compiled PHP modules...

How to Install or Uninstall PECL Extensions

Pre-Flight Check These instructions are intended specifically for installing or uninstalling...

How to Install the MongoDB PHP Driver (Extension) on CentOS 6

Step 1: Setup Environment, Install PHP Extension & Application Repository (PEAR) As a matter...

How to Add a User and Grant Root Privileges on CentOS 6.5

Step 1: Add the User It’s just one simple command to add a user. In this case, we’re...

How to Add a User and Grant Root Privileges on Ubuntu 14.04

Step 1: Add the User It’s just one simple command to add a user. In this case, we’re...

Powered by WHMCompleteSolution