異なるユーザー グループが単一のディレクトリに対して異なる権限を持つ FTP サービスを構成する方法

異なるユーザー グループが単一のディレクトリに対して異なる権限を持つ FTP サービスを構成する方法

(Ubuntu 12.04 を使用)

特定のユーザー セットがディレクトリに書き込みでき、別のユーザー セットは読み取りのみ可能な FTP サービスを設定する必要があります。

ディレクトリのグループ ビットを読み取り専用または読み取り/書き込みに設定することはできますが、ディレクトリを 2 つの異なるセキュリティ レベルの 2 つのグループに関連付けることはできないため、単一のディレクトリに対してこれを実行するのは難しいと思います。私の考えは正しいですか? 正しくない場合は、どうすればよいでしょうか。

2 つのディレクトリを作成しようと考えています。1 つはグループ ビットを読み取りと書き込みに設定し、書き込みグループに関連付け、もう 1 つはビットを読み取り専用に設定し、読み取りグループに関連付けます。その後、読み取りディレクトリを「書き込み」グループ ディレクトリに書き込まれたファイルにリンクする方法があることを期待します。これは機能しますか。どうすればよいでしょうか。

詳細な回答が望ましいですが、どのようなアプローチを取るべきか、どのような技術を学ぶべきか (リンクや ACL など、聞いたことはあるが使用したことがない) について何らかのアドバイスが得られれば、調査を行ってここに報告することもできます。これを正しく行いたいので、どのような助言でもいただければ幸いです。

答え1

ディレクトリのリンクしません動作します。シンボリックリンクを作成する場合、シンボリックリンクの権限は関係なく、元のディレクトリの権限のみが関係します。ディレクトリのハードリンクは通常、OS によって許可されていません。

最初の解決策:

OS ファイル システムを除外し、ユーザーを読み取り専用または書き込み専用に制限できる FTP サーバーを使用するのがncftpd思い浮かびます。

2番目の解決策:

これらのファイルがグループ 2 以外のユーザーによって読み取り不可であることが重要ですか? それが重要でない場合、最も簡単な方法は、ディレクトリを他のユーザーに対しては読み取り可能、グループに対しては書き込み可能に設定することです。

3番目の解決策(私の意見では最もひどいもの)

別の方法としては、グループごとに 1 つずつ 2 つのディレクトリを用意し、約 5 分ごとに cron ジョブを実行して各ディレクトリからファイルをコピー (または移動) するという方法があります。

関連情報