Я установил vsftpd, следуя этому руководству: https://help.ubuntu.com/6.06/ubuntu/serverguide/C/ftp-server.html
Настройка прошла успешно, и я могу подключиться, используя учетные данные локальных пользователей, как и ожидалось. Однако у меня проблема со списком каталогов и разрешениями ..
Если я не ограничиваю локальных пользователей их домашним каталогом с помощью chroot_local_user, они могут просматривать всю файловую систему до самой глубокой папки / dev.
С другой стороны, когда я пытаюсь включить директиву chroot_local_user, пользователи действительно ограничены своим домашним каталогом, но исходный удаленный каталог является корневым разделом. Отображение любого каталога вызывает ошибку авторизации, кроме домашнего каталога пользователя.
Я проверил конфиги vsftpd и, похоже, ничего не делает то, что я хочу ..
Еще я не понимаю, почему при установке пакета создается каталог / home / ftp, если он не используется.
Изменить: я заметил, что vsftpd работает как root ... это ожидаемое поведение ??
Убедитесь, что local_root не установлен:
local_root
This option represents a directory which vsftpd will try to change into after
a local (i.e. non-anonymous) login. Failure is silently ignored.
Default: (none)
Также этот вариант может оказаться полезным:
passwd_chroot_enable
If enabled, along with chroot_local_user , then a chroot() jail location may
be specified on a per-user basis. Each user's jail is derived from their home
directory string in /etc/passwd. The occurrence of /./ in the home directory
string denotes that the jail is at that particular location in the path.
Default: NO
Затем вы можете добавить /home/user/./
в файл / etc / passwd.
Наконец, пользователь ftp создается для анонимного входа:
ftp_username
This is the name of the user we use for handling anonymous FTP. The home
directory of this user is the root of the anonymous FTP area.
Default: ftp