SFTP 客户端不尊重默认的 UMASK 权限

SFTP 客户端不尊重默认的 UMASK 权限

我的情况如下:我正在为团队共享设置一个 Ubuntu 14.04 网络服务器。我希望团队对里面的所有内容都有读/写权限(与每个文件和文件夹var/www/html一样)。CHMOD 775

我的问题是 Mac 上的 SFTP 客户端(Transmit、Cyber​​duck 和 FileZilla)不尊重我设置的默认权限。

经过几个小时,我已经完成了许多步骤来实现我的目标:

设置团队权限:

  1. 创建myteam群组
  2. 将所有用户添加到myteam
  3. 将 的组所有权更改/var/www/htmlmyteam

此时,ls -la回报/var/www

drwxrwsr-x 2 marcelo myteam 4096 Jul 20 13:29 html

设置默认的 UMASK:

  1. 更新/etc/ssh/sshd_config基于Subsystem sftp /usr/lib/openssh/sftp-server -u 002本文
  2. 更新/etc/pam.d/sshd/etc/pam.d/login基于session optional pam_umask.so umask=0027这个问题
  3. 更新/etc/pam.d/common-session/了新行session optional pam_umask.so并编辑/etc/login.defs以将 UMASK 行更改为UMASK 002基于这个问题
  4. 重新启动所有适当的服务和/或重新启动整个机器

此时,如果我通过 shell 通过 SSH 进入服务器,该umask命令将报告002,并且所有新文件和文件夹都具有正确的权限。但是,如果我通过 Transmit、Filezilla、Cyber​​duck 等通过 SFTP 进入服务器并创建文件或文件夹,它不会遵守并将文件默认为rw-r--r--和文件夹默认为rwxrwsr-x(文件夹是正确的)。我检查过,FTP 客户端没有覆盖任何权限 - 这些权限已被禁用。

答案1

这是一个老问题,已经讨论过很多次了。我在这里写了简短的回答:

https://superuser.com/questions/937003/setting-default-group-permissions-via-sftp/937735#937735

基本上,您使用最后一条评论回答了自己。 SFTP 保留原始权限并umask从中截断。

相关内容