Согласно предыдущему ответу «РЕАЛЬНОЕ решение этой проблемы: домашняя папка пользователя не должна быть доступна для записи только для чтения».
Для начала нам нужно построить топологию каталога пользователя:
/home (ro) |-someuser (rw,700) |-ftp_upload (ro,555) - ch_rooting here, required ro by vsftpd :( |-temp (rw,755) |-in_box (rw,755) |-out_box (rw,755) ]vsftpd.conf cut:
#enable chrooting chroot_local_user=YES #chroot all users except listened inside chroot_list chroot_list_enable=YES #exception list, ideally should be blank ;) chroot_list_file=/etc/vsftpd/chroot_list #map ftp root dir to specifiec dir local_root=/home/someuser/ftpЭта конфигурация отлично работает с однопользовательской конфигурацией, поскольку для многопользовательского пользователя следует дополнительно использовать директиву «user_config_dir».
* * UPDATE 20/09
------ **
Вот сложное обходное решение, а не лучшая идея для использования, но .... Если вам нужна перезаписываемая корневая папка ftp , просто вставьте команды изменения разрешений в команды перед запуском и после старта.
1) pre-start - изменение разрешений только на чтение, для чего требуется сервер (:
2) start server
3) post-start - изменить разрешение на чтение-запись или что вам нужно.