我正在跑步vsftpd
,有一個具體問題:
file_open_mode
和選項local_umask
讓我可以配置新建立的檔案/資料夾應具有哪些權限。
問題:
我想要 0660 用於新文件,但 0770 用於新文件夾(所有文件和文件夾都應該由所有者和組讀取和寫入 - 資料夾需要該executable
位,以便可以打開它們)
我該如何配置呢?
(我搜尋了這個論壇、Google、vsftpd.man 頁面、教學、手冊..)
答案1
長話短說:
和of 的file_open_mode
預設值將為您提供 的檔案權限和 的目錄權限。0666
local_umask
0007
0660
0770
文件權限
正如您已經指出的,文件是使用中設定的權限建立的file_open_mode
(由 修改local_umask
)。因此,要取得使用建立的文件,0660
可以保留預設值file_open_mode
並使用local_umask
of進行修改0007
以獲得0660
結果。
目錄權限
目錄是0777
使用local_umask
.我發現的關於此的唯一支援文件是原始程式碼本身。由於沒有可用的官方瀏覽器可讀原始碼,我只能連結到非官方原始碼鏡像:https://github.com/dagwieers/vsftpd/blob/3.0.2/postlogin.c#L1179其中註解中的「tunable umask」指的是配置local_umask
。
/* NOTE! Actual permissions will be governed by the tunable umask */
retval = str_mkdir(&p_sess->ftp_arg_str, 0777);