让用户可以移动和更改FTP文件夹结构中的文件的安全方法?

我们有一个FTP,客户可以放弃他们的文件。 我们希望运行一个脚本,每隔15分钟将文件扫出文件夹。

当前权限和文件夹结构如下所示:

drwxr-xr-x 3 root ftpusers 4.0K Apr 12 20:45 client1 |-- drwxr-xr-x 3 client1 ftpusers 4.0K Apr 12 20:45 incoming |-- drwxr-xr-x 3 client1 ftpusers 4.0K Apr 12 20:45 processed drwxr-xr-x 3 root ftpusers 4.0K Apr 12 09:58 client2 |-- drwxr-xr-x 3 client2 ftpusers 4.0K Apr 12 20:45 incoming |-- drwxr-xr-x 3 client2 ftpusers 4.0K Apr 12 20:45 processed drwxr-xr-x 3 root ftpusers 4.0K Apr 12 07:06 client3 |-- drwxr-xr-x 3 client3 ftpusers 4.0K Apr 12 20:45 incoming |-- drwxr-xr-x 3 client3 ftpusers 4.0K Apr 12 20:45 processed 

我的第一个想法是创build一个没有密码的用户,使其成为ftpusers组的一部分,然后给ftpusers写访问权限,但是这似乎给不必要的权限给客户端*不安全的帐户。 此外,vsftp禁止使用chroot jail和其他用户以外的用户拥有写权限的文件夹。

设置一个可以执行这样的任务的cron / user的最佳实践是什么? 它的任务是查找传入文件夹中的所有文件,将它们推送到API,然后将它们移到处理的文件夹中。 它需要能够修改整组文件夹中的文件。

作为使用mv命令的根,它不会更改所有权和权限。

如果你想复制文件。 使用cp -p,她的-p将保留权限和所有权。

您可以在脚本中使用这两个命令,并将脚本放在root的crontab中。