![他のユーザーが閲覧できる FTP ドロップ ボックスを作成するにはどうすればよいですか?](https://rvso.com/image/1568309/%E4%BB%96%E3%81%AE%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%8C%E9%96%B2%E8%A6%A7%E3%81%A7%E3%81%8D%E3%82%8B%20FTP%20%E3%83%89%E3%83%AD%E3%83%83%E3%83%97%20%E3%83%9C%E3%83%83%E3%82%AF%E3%82%B9%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
免責事項、嘘はつきません、以前解決できなかった問題を再開しています
Linux で、FTP ユーザー (ユーザー A) がファイルを書き込むことはできるが、その後はファイルを表示できず、別のユーザー (ユーザー B) がそれらのファイルを読み取って操作できるドロップボックスを作成したいと考えています。グループを試し、ユーザー A の umask を 777 まで変更してみましたが、結局、ユーザー A がサーバーにファイルを書き込むと、ユーザー A だけがそのファイルに対する権限を持ちます。はい、ユーザー B はディレクトリに対する権限を持っていますが、ユーザー A がディレクトリにドロップしたファイルに対する権限はありません。
ユーザーBはファイル内のデータを処理するPerlスクリプトを実行しますが、これまでのところ、次のようにPerlスクリプトを実行した場合にのみ機能します。すしかし、私たちはそれが危険であることを知っています。
何が間違っているのか全く分かりませんが、単純なことだと思います。FTP ユーザーの設定でしょうか? ディレクトリの権限でしょうか? 頭がおかしくなりそうです。
ありがとう、
答え1
使用しているプログラムに独自の umask 実装がない限り、umask (プロファイル ファイル内) は、シェル セッション外 (FTP または sFTP) ではほとんど機能しません。
ACL をサポートするファイルシステムを使用している場合 (ACL を有効にしてマウントされている場合)、ドロップ ボックス ディレクトリにデフォルトの権限を設定して、ユーザー B が常に新しいファイルにアクセスできるようにすることができます。
setfacl -m -d user:userB:rwx /path/to/dropbox
-m
既存の ACL を変更することです (新しい状態から開始する場合でも機能します)
-d
すべての新しいファイルが権限セットを継承するように、デフォルトを設定します (ディレクトリにのみ適用可能)。
user:userB:rwx
最初の「user」は、ユーザー(グループではなく)の権限を設定することを指定し、userB はアクセス権を付与するユーザーの名前、rwx は付与する権限(読み取り/書き込み/実行)です。
答え2
FTP ユーザー用の umask と、サーバー上のユーザー用の別の umask セットがあることに気付いたため、この質問を終了します。FTP ユーザーがドロップ ボックスにドロップしたファイルを他のユーザーが読み取る権限を与えるために、FTP ユーザーの umask を変更したことがあります。