我像这样configuration了OpenSSH
Subsystem sftp internal-sftp Match Group sftp ForceCommand internal-sftp -u 002 AuthorizedKeysFile /home/sftp/ssh/%u ChrootDirectory %h X11Forwarding no AllowTcpForwarding no
此configuration正在工作,但有一个问题:从本地驱动器复制到sftp的文件或文件夹保留其权限(通常为755
),没有其他sftp-user
可以访问它们。
其他sftp-users
只有拥有完全的权限,如果有人创build一个文件夹或文件或复制775权限的文件。
有没有办法让sftp-directory
中的所有文件都有775
权限? 目前我正在使用chmod -R 775 /home/sftp/files/
来手动设置它,但这不是我想要的解决scheme…
谢谢
有了这个设置,这是不可能的,因为如果原始权限较低, umask
是不够强的工具来强制权限。 有几个解决scheme如何继续这个:
首先是您提到的chmod
,您需要定期运行以使所有用户都可以访问所有文件。
另一种解决scheme是-m
切换sftp-server
,通过强制新上传文件的确切权限解决此问题。 但是这个特性并不在上游,但是至less在RHEL / Fedora中可用,特别是在这个用例中。