我一直在寻找一种方式来设置的OpenSSH的的umask以0027
在所有连接类型一致的方式。
通过连接类型,我指的是:
3. 和 4. 之间的区别在于前者启动一个通常读取/etc/profile
信息的外壳,而后者不启动。
此外,通过阅读这篇文章,我了解到较新版本的 OpenSSH 中存在 -u 选项。然而这行不通。
我还必须补充一点,/etc/profile
现在包括umask 0027
.
逐点进行:
-u 0027
在这里sshd_config
提到的设置,是不够的。如果我不设置这个参数,sftp 默认使用umask 0022
. 这意味着如果我有两个文件:
-rwxrwxrwx 1 user user 0 2011-01-29 02:04 execute
-rw-rw-rw- 1 user user 0 2011-01-29 02:04 read-write
Run Code Online (Sandbox Code Playgroud)
当我使用 sftp 将它们放入目标机器时,我实际上得到:
-rwxr-xr-x 1 user user 0 2011-01-29 02:04 execute
-rw-r--r-- 1 user user 0 2011-01-29 …
Run Code Online (Sandbox Code Playgroud)