複数のFTPユーザーが共通のホームディレクトリを共有します。

複数のFTPユーザーが共通のホームディレクトリを共有します。

私は、同じホームディレクトリで複数のFTPユーザーを作成できるように、前述のような設定が必要です。

今まで試したこと

新しいユーザーを作成し、ftpユーザーのディレクトリをhomeとして指定しましたが、新しいユーザーがディレクトリの所有者ではないため、接続が拒否されたようです。

また、元のftpディレクトリへのソフトリンクを作成し、そのリンクをシングルユーザーホームディレクトリのホームディレクトリにマップするのと同じように、ソフトリンクを使用して管理しました。

すべてのFTPユーザーに対してすべてのホームディレクトリを個別に作成すると、これが機能することがわかります。 FTPユーザーとApacheユーザーの両方が同じであるため、Apacheをアップロードするファイルにはデフォルトで実行権限があります。 Apacheとマップされていない他のユーザーを使用してファイルをアップロードすると、Apacheはそのファイルを実行できますか?

答え1

「Apacheがファイルを実行できました」という言葉が何を意味するのかわかりません。 FTP経由でアップロードされたファイルを本当に実行(つまり、プログラムとして実行)しますか?それとも、Apacheがクライアントにデータとして提供したいという意味ですか? Webクライアントが表示できるディレクトリは、Apache設定ファイルによって決まります。必要なディレクトリを提供するように設定できます。

通常、新しいファイルはすべての人に読み取り権限を付与し、所有者にのみ書き込み権限を付与することによって生成されます。つまり、-rwxr-xr-x755オクテット(-rw-r--r--または実行可能ファイルでない場合は644オクテット)です。新しいファイルに付与される権限は、そのファイルを生成するプロセスのumaskによって制御されます。これは、FTPユーザーがアップロードしたファイルがApacheによって設定されている場合にApacheで使用できることを意味します。

複数のユーザーがホームディレクトリを共有できるようにするには、そのディレクトリはすべてのユーザーが書き込み可能である必要があるため、グローバル書き込み権限またはグループ書き込み権限が必要であり、ディレクトリに書き込む必要があるすべてのユーザーはAに属している必要があります。ディレクトリはそのグループを所有します。

ただし、この方法が正しい方法ではない可能性があります。別のユーザーを使用して必要なものを取得することもできます。

関連情報