Назад | Перейти на главную страницу

Proftpd: Как установить root по умолчанию в домашний каталог пользователя, не помещая пользователя в тюрьму?

Я установил proftpd на свой debian box, но у меня возникли проблемы с настройкой.

В моем файле proftpd.conf я добавил:

DefaultRoot ~ !ftp_special

Это прекрасно работает, поскольку все пользователи, кроме членов ftp-special, не могут перемещаться за пределы своей домашней папки. Однако мне нужны пользователи, которые являются членами ftp-special чтобы войти в специальную домашнюю папку при входе на ftp-сервер, но в то же время я хочу, чтобы они могли перемещаться по всему серверу.

Прямо сейчас, если пользователь, входящий в систему ftp-special, входит в систему, его точкой входа является корень (/).

Заранее спасибо.

Вы можете попробовать следующее:

DefaultRoot ~ !ftp_special
DefaultChdir /path/to/specialdir ftp_special

В DefaultChdir директива изменит исходный каталог / каталог по умолчанию для вошедшего в систему пользователя, как и DefaultRoot, только без chroot().

На данный момент мне известно единственное решение, в котором нужно менять домашние каталоги членов группы ftp-special. Может быть, есть мод для proftpd, который меняет текущий каталог после входа в систему.

К сожалению, я считаю, что для этого нет обходного пути на стороне сервера. Демон ProFTPd не заставляет пользователей, освобожденных от параметра «DefaultRoot», регистрироваться в специальном каталоге. Единственный вариант, о котором я знаю, - это попросить пользователя указать путь на стороне клиента.