组的 SFTP 服务器写入权限

组的 SFTP 服务器写入权限

我知道这方面有很多问题,但对我来说都不起作用。所以我在 Ubuntu 4.8 上有一个启用了 sshd 的 ftp 服务器。我希望所有者的组对每个上传的文件都有写入权限。

现在文件夹的权限是:drwxrwxr-x 并且每个上传的文件都有权限-rw-r--r--

我已经尝试过但没有任何改变(使用 FileZilla3.21.0sftpd直接在 Mac 上使用命令):

  • 设置local_mask=0002/etc/vsftpd.conf
  • 设置Subsystem sftp /usr/lib/openssh/sftp-server -u 002Subsystem sftp /usr/lib/openssh/sftp-server -u 0002/etc/ssh/sshd_config

我已经重新启动vsftpdsshd,但仍然只有该组的读取权限。这是什么原因?

答案1

SFTP 协议包括客户端设置服务器上文件属性的操作。这意味着 SFTP 客户端可以设置上传文件的权限,而不管 umask 是什么。

我可以想到三种方法来实现你想要的:

  1. 要求远程用户设置其客户端以禁用对上传文件的设置权限(如果可能)。例如,您可以在这个 WinSCP 对话框

  2. 在服务器上设置一个自动化流程来扫描包含这些文件的目录,并调整任何新上传的文件的权限。

  3. 在 SFTP 服务器中禁用 SSH_FXP_SETSTAT 操作。对于OpenSSH 服务器,你必须改变源代码sftp 服务器程序。市场上有商业 SSH/SFTP 解决方案,其中之一可能允许禁用此功能。

相关内容