vsftpd 在尚未出現帳號登入提示前,就出現 500 OOPS: vsftpd: refusing to run with writable root inside chroot() 的錯誤訊息,是因為 vsftpd 為了增強安全,當帳號可使用 chroot() 目錄時,該目錄就不得為可寫入(writeable)。
而在尚未出現使用者帳號登入提示前,就出現該錯誤,要去修改 secure_chroot_dir 的寫入權限,在 /etc/vsftpd.conf 裡面會指定 secure_chroot_dir 的位置:
secure_chroot_dir=/var/run/vsftpd/empty
將該目錄的寫入權限移除,該目錄只要移除 other 的 w 權限,然後重啟 vsftpd 服務即可:
#chmod o-w secure_chroot_dir=/var/run/vsftpd/empty
#service vsftpd restart