登录时自动切换到 chroot jail 中的子文件夹

登录时自动切换到 chroot jail 中的子文件夹

我正在设置一个 FTP 服务器来替换旧的 Windows 服务器安装。我在 Ubuntu 16.04 上使用 vsftpd。

公司外部有多个用户(自动化测试系统),我们希望使变更透明化 - 无需对客户端机器进行任何更改

我已经关注指导并设置虚拟用户和 chroot jail。这工作正常,当我使用 Filezilla 登录时,我可以看到我已成功 chroot 到虚拟用户的主目录 ( home/vftp/$USER)。

但是。为了防止越狱,这个目录必须是不可写的,所以我创建了一个home/vftp/$USER/uploads具有写权限的子目录。因为我不想在客户端机器上进行更改,所以我需要让他们uploads登录时更改到这个目录,这样他们只需登录+上传,而不必更改目录。

我知道我可以允许可写的根目录(因此不需要子文件夹)allow_writeable_chroot=YES,但由于这是一台面向外部的机器,所以这并不是一个好主意。

有没有办法可以将用户置于 chroot jail 中,但将他们的工作目录切换到子目录?

答案1

如果您可以设置用户主目录,则可以passwd_chroot_enable=YES在 中指定vsftpd.conf主目录,例如/home/vftp/USER/./uploads/etc/passwd

它将创建 chroot jail/home/vftp/USER并使用uploads子目录作为用户HOME目录。

相关内容