作成したディレクトリとファイルのデフォルト値を775に設定するにはどうすればよいですか?私の理解は、VSFTPDのumaskを変更する必要があるということですが、どのように変更するかを知るにはどうすればよいですか?
必要なUmaskと最終的なアクセス許可は、最大777になるはずです。775のアクセス許可が必要なので、umaskとして777-775 = 002が必要です。
Umaskをどこに設定するか疑問に思う場合は、vsftpd構成ファイル(/etc/vsftpd.conf)で、匿名アクセスの場合はanon_umask
、ユーザーの場合はlocal_umask
として設定できます。
マスクが正しく機能するためには(匿名アクセスがなくても)、anon_upload_enable=YES
とanon_mkdir_write_enable=YES
を設定する必要があります。これらが設定されていない場合、FTP経由でアップロードされたファイルに対するグループまたはその他のユーザーは、書き込み、読み取り、および実行が許可されません(他の標準特権が設定されている場合でも)。
あなたのケースでは、ユーザー認証されたアクセスが必要な場合、以下を設定する必要があります:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=0002
anon_upload_enable=YES
anon_mkdir_write_enable=YES
file_open_mode=0777
ここで、file_open_mode
はファイルのデフォルト設定を設定します。 777
を使用すると、誰でも読み取り、書き込み、実行が可能になります。 local_umask
を002
に設定すると、要求どおりに775
が得られます。
local_umask
のデフォルトは077
になり、グループなどがファイルにアクセスできないようにする(したがって、ここで設定される)ことに注意してください。