vsftpd で仮想ユーザーを設定する

vsftpd で仮想ユーザーを設定する

Linux ボックスで FTP サーバーの仮想ユーザーを設定しようとしていますが、選択したサーバー (vsftpd) が必要な機能を実行できるかどうかわかりません。要件は次のとおりです。

  1. FTP アカウントは、実際の Linux ユーザーのホーム ディレクトリ内にあります。これを「プロジェクト」と呼びます。したがって、アカウントは次の場所にある必要があります。

    • /ホーム/プロジェクト/../ユーザー1
    • /ホーム/プロジェクト/../ユーザー2
  2. そのユーザー「プロジェクト」にはシェル アクセスが必要ですが、仮想ユーザーには必要ありません。

  3. 仮想ユーザーは、自身のサブディレクトリ内、つまり/home/project/../user1、、/home/project/../user2などの内部に chroot される必要があります。

  4. アップロードされたファイルには、「プロジェクト」ユーザーと同じ UID/GID が必要です。

さて、私の主張は、このチュートリアル、vsftpd ではこれができません:

...ローカル ユーザーに対して chroot が有効になっている場合、デフォルトではホーム ディレクトリに制限されます。ただし、vsftpd がディレクトリを保護する方法により、ユーザーが書き込み可能であってはなりません。

彼らが提案する解決策は、ユーザーのディレクトリ内にサブフォルダを作成し、それを「nobody」が所有するようにして、ユーザーの書き込み権限を削除することですが、それは私が必要としているものではありません。そのサブディレクトリ内のすべてのものを元のユーザーが所有し、書き込み可能にする必要があります。

これを実行する方法はありますか? 別の FTP サーバーを使用する方法はありますか?

関連情報