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

Автоматически переходить в подпапку chroot jail при входе в систему

Я настраиваю FTP-сервер, чтобы заменить старую установку сервера Windows. Я использую vsftpd в Ubuntu 16.04.

Есть несколько пользователей (автоматизированные системы тестирования), не связанных с компанией, и мы хотим сделать изменения прозрачными - никаких изменений на клиентских машинах не требуется.

Я следил этот руководство и настройка виртуальных пользователей и chroot jail. Это работает правильно, и когда я вхожу в систему с помощью Filezilla, я вижу, что я успешно перенесен в домашний каталог виртуального пользователя (home/vftp/$USER).

Тем не мение. Этот каталог не должен быть доступен для записи, чтобы предотвратить выход из тюрьмы, поэтому я создал подкаталог home/vftp/$USER/uploads с разрешениями на запись. Поскольку я не хочу вносить изменения на клиентских машинах, мне нужно изменить их на этот uploads каталог при входе в систему, чтобы они просто входили + загружали без необходимости менять каталог.

Я знаю, что могу разрешить записываемый корень (и, следовательно, не требовать подпапку) с allow_writeable_chroot=YES, но поскольку это машина, обращенная вовне, это не лучшая идея.

Есть ли способ поместить пользователя в chroot-тюрьму, но переключить его рабочий каталог в подкаталог?

Если вы можете установить домашний каталог пользователя, вы можете указать passwd_chroot_enable=YES в vsftpd.conf вместе с домашним каталогом, таким как /home/vftp/USER/./uploads в /etc/passwd.

Это создаст chroot-тюрьму в /home/vftp/USER и использовать uploads подкаталог как пользователь HOME каталог.