SFTP服务器写入组的权限

我知道有很多这方面的问题,但没有为我工作。 所以我有一个启用了sshd的Ubuntu 4.8上的ftp服务器。 我想拥有上传的每个文件的所有者的组的写权限

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

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

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

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

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

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

  1. 如果可能,请远程用户将其客户端设置为禁用对上传文件的设置权限。 例如,您可以在此WinSCP对话框中看到该设置。

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

  3. 禁用SFTP服务器中的SSH_FXP_SETSTAT操作。 对于OpenSSH服务器 ,您必须更改sftp-server程序的源代码。 市场上有商用的SSH / SFTP解决scheme,其中一个可能会禁用此function。