VSFTP настроен, и я хочу, чтобы пользователи не заходили в другие каталоги, кроме их / home. Я установил:
chroot_local_user=YES
Но вроде не работает (после перезапуска).
Может быть, у меня неправильный файл конфигурации? Или есть другие настройки или способы входа в систему, которые пропускают эту строку конфигурации?
редактировать: Вместе с кем-то еще я обнаружил, что vsftp вовсе не был сервером, слушающим порт .. Поэтому я не видел отражения моих изменений. Решил проблему в другом месте таким образом.
Тем не менее, ответы ниже могут решить проблему для других, у которых есть это.
У тебя есть chroot_list_enable
опция включена? Если да, то все пользователи, перечисленные в chroot_list_file
воля не быть chrooted.
Я думаю, что часть этого избыточна, но я не возвращался, чтобы тыкать в нее, так как это работает. (Думаю, я был там, где вы были при первой настройке, поэтому установлен chroot_local_user ...)
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
chroot_local_user=YES
userlist_enable=YES
... и /etc/vsftpd.chroot_list - пустой файл.
Убедитесь, что домашний каталог пользователя задан и правильный (не / root):
usermod -d /home/user user