Linux
組的 SFTP 伺服器寫入權限
我知道對此有很多問題,但對我沒有任何幫助。所以我在 Ubuntu 4.8 上有一個啟用了 sshd 的 ftp 伺服器。我想對每個上傳的文件擁有所有者組的寫入權限。
現在文件夾的權限是:
drwxrwxr-x
並且每個上傳的文件都有權限-rw-r--r--
我嘗試過但根本沒有改變任何東西(使用 FileZilla
3.21.0
或sftpd
直接在 Mac 上的命令):
- 設置
local_mask=0002
_/etc/vsftpd.conf
- 設置
Subsystem sftp /usr/lib/openssh/sftp-server -u 002
或Subsystem sftp /usr/lib/openssh/sftp-server -u 0002
在/etc/ssh/sshd_config
我確實重新啟動了
vsftpd
,sshd
但仍然只有該組的讀取權限。這是什麼原因?
SFTP 協議包括客戶端為伺服器上的文件設置屬性的操作。這意味著 SFTP 客戶端可以設置上傳文件的權限,而不管 umask。
我可以想到三種方法來完成你想要的:
- 假設可能,請遠端使用者將其客戶端設置為禁用對上傳文件的設置權限。例如,您可以在此 WinSCP 對話框中看到它的設置。
- 在伺服器上設置一個自動化程序來掃描包含這些文件的目錄,並調整任何新上傳文件的權限。
- 在 SFTP 伺服器中禁用 SSH_FXP_SETSTAT 操作。對於OpenSSH 伺服器,您必須更改sftp-server程序的原始碼。市場上有商業 SSH/SFTP 解決方案,其中之一可能允許禁用此功能。