
私は FTP サーバー (Debian 上の proftpd) を持っており、数人の友人にアクセスを許可する予定で、万が一に備えていくつかのセーフティ ネットを用意したいと考えています。
私がやりたいことのいくつかは次のとおりです。
- アカウントをホームディレクトリに閉じ込め、アップロードできるデータ量に上限を設ける
- 完全なアクセス権を持つ共有フォルダへのアクセスを(シンボリックリンクなどを介して)許可します(ストレージの上限もありますが、より大きくなります)。
- 自分のアカウントにシステムへのフルアクセスを許可する(グループを使用すると思います)
- 匿名アクセスを許可しない、または共有ユーザーフォルダとは別の独自のフォルダで許可する
現在、アカウントを設定して jail にしていますが、私が配置したシンボリック リンクによって共有フォルダーにアクセスできないようです。これは、自分のホーム ディレクトリ以外の読み取り権限がないことと関係していると思いますが、他の原因かもしれません。引き続き調査し、要求された情報を提供します。
私がやろうとしていることは可能ですか? 共有できるヒントやリソースがあれば、ぜひ教えてください。ありがとうございます。
答え1
私がやろうとしていることは可能でしょうか?
友達1人につき1回のログインでは、(おそらく)両方を行うことはできません。
- アカウントをホームディレクトリに監禁します。
- 共有フォルダへのアクセスを許可します。
どれでもできます
- 共有フォルダーにアクセスするための別のアカウントを提供します。
- unison のようなものを使用して、すべての jail 化されたアカウント間でサブフォルダーを複製します。
- 他に思いつかなかったこと :-)
答え2
もともとこれを編集中だったのですが、今日、stackexchange で自分の質問に答えることができることに気付きました... おっと。
しばらくこの件について更新していませんでしたが、自分と他の人が参照できるように、ここで行ったことを記録しておきます。最終的にはディスク容量に制限を設けませんでしたが、これ役に立つかもしれません。共有フォルダの場合、マウントのバインド オプションを使用しました。これは Linux の古いバージョンでは機能しないと言われていますが、私の場合は機能しました。このオプションの fstab 構成は次のようになります。
/absolute/path/to/folder /home/user1/Shared ext4 bind 0 0
/absolute/path/to/folder /home/user2/Shared ext4 bind 0 0 ...
だいたいこれで終わりです。詳しくは、bind オプションを調べてください。また、特定のグループのユーザーだけがフォルダーを読み書きできるように chown し、ユーザーをホーム ディレクトリに閉じ込めました。また、自分のアカウントにフル アクセスを与えることはしませんでした。今では、おそらく不要なセキュリティ リスクだと認識しているからです。自宅から ssh で接続して、必要なことは何でもできます。これが他の誰かの役に立つことを願っています。