vsftpd: разрешить пользователю видеть только свой домашний каталог

Я только что установил vsftpd и создал нового пользователя: sudo useradd new_user -m . Затем я раскомментировал строку ниже в /etc/vsftpd.conf :

 chroot_local_user=YES 

чтобы позволить пользователю видеть (доступ) только к своему домашнему каталогу.

Затем я перезапустил vsftpd.

Проблема : когда я подключаюсь через ssh или ftp клиент с использованием этого нового пользователя, новый пользователь может видеть (доступ) к каждому каталогу компьютеров, и я ожидал, что он / она увидит только свой домашний каталог .

Im on Ubuntu 14.04

Пытаться

 passwd_chroot_enable=yes 

passwd_chroot_enable

Если включено, наряду с chroot_local_user, то местоположение chroot () может быть указано отдельно для каждого пользователя. Тюрьма каждого пользователя выводится из строки исходного каталога в / etc / passwd. Возникновение /./ в строке домашнего каталога означает, что тюрьма находится в этом конкретном месте в пути.

Также обратите внимание, что AFAIR vsftp должен запускаться от имени root, чтобы любые настройки chroot работали!

Смотрите также

run_as_launching_user

[…] В частности, vsftpd не использует / не может использовать технологию chroot, чтобы ограничить доступ к файлам, когда этот параметр установлен (даже если он запущен root). […]

Приносим извинения, но у меня нет немодифицированной копии /etc/vsftpd.conf из Ubuntu 14.04, удобной для сравнения. Возможно, это поможет.

Если у вас активирован chroot_list_enable , вы можете предоставить список локальных пользователей, помещенных в тюрьму chroot () в своем домашнем каталоге при входе в систему.

Значение немного отличается, если для параметра chroot_local_user установлено значение YES . В этом случае список становится списком пользователей, которые НЕ помещаются в тюрьму chroot (). По умолчанию файл, содержащий этот список, – это /etc/vsftpd.chroot_list, но вы можете переопределить его с chroot_list_file параметра chroot_list_file приведена chroot_list_file Excerpt на man-странице.

chroot_list_file

Параметр – это имя файла, содержащего список локальных пользователей, который будет помещен в chroot () тюрьму в их домашний каталог. Этот параметр применим только в том случае, если включена опция chroot_list_enable . Если опция chroot_local_user включена, то файл списка становится списком пользователей, которые НЕ помещаются в тюрьму chroot ().

 Default: /etc/vsftpd.chroot_list 

Источники:

https://security.appspot.com/vsftpd/vsftpd_conf.html

https://linux.die.net/man/5/vsftpd.conf