我正在尝试为 Linux 机器中的 FTP 服务器设置虚拟用户,但我不确定我选择的服务器 (vsftpd) 是否可以满足我的需要。我的要求是:
FTP 帐户位于真实 Linux 用户的主目录中,我们称之为“项目”。因此,帐户需要位于其中,例如:
- /主页/项目/../用户1
- /主页/项目/../用户2
该用户“项目”需要具有 shell 访问权限,但虚拟用户则不需要。
虚拟用户需要在其自己的子目录内进行 chroot:即,在
/home/project/../user1
,/home/project/../user2
等内部。上传的文件需要与“项目”用户具有相同的UID/GID。
现在,我的观点是,根据本教程,vsftpd 不能这样做:
...当为本地用户启用 chroot 时,默认情况下,他们只能访问自己的主目录。但是,由于 vsftpd 保护目录的方式,该目录必须对用户不可写。
他们提供的解决方案是在用户目录中创建一个子文件夹,将其设为“无人”所有,并删除用户的写入权限...但这不是我需要的。我需要该子目录中的所有内容都归原始用户所有并可由原始用户写入。
有什么办法吗?也许使用不同的 FTP 服务器?