web-dev-qa-db-ja.com

Apache2-ユーザーのアカウントとしてApacheを実行します

自分だけのLinux(Debian Stable)サーバーを入手し、Apache2、PHP5、MySQLをインストールしました。それは私自身と他のウェブサイトのホスティングに使用されることになっています。

現在のように、Apacheは独自のユーザーとして実行されています。つまり、Webルート内のすべてのファイルとフォルダーをApacheユーザーに「chown」する必要があります。そうしないと、Apacheはそれらを編集および/または削除できません。これは、プラグインなどをインストールする際のWordpress)の大きな問題です。

Googleで少し調べてみたところ、Apacheを独自のユーザーとして実行するのではなく、ユーザーのApacheインスタンスを独自のユーザーとして実行する必要があるというWebサイトが見つかりました。

それ、どうやったら出来るの?

3
Niklas H

セキュリティと互換性の理由から、それはそれほど素晴らしい考えではありません。

より良いアイデアは、各人のcgiをそれらとして実行するsuexecを使用することかもしれません。

あなたが本当にこれをしたいのなら

追加

User youruserid
Group yourgroupid

/etc/Apache2/Apache.confに

これがファイルのどこにあるのかわからない場合、または別のファイルである可能性があると思われる場合は、ユーザーとグループの文字列をスキャンしてください。すでに設定があるかもしれません。


ここにあなたが好きかもしれないいくつかのドキュメントがあります

ユーザーディレクティブ http://httpd.Apache.org/docs/2.0/mod/mpm_common.html#user

一般的なApache2 http://httpd.Apache.org/docs/2.0/

3
Paul

Apacheを実際のユーザーとして実行しないことを強くお勧めします。サイトでエクスプロイトが見つかった場合、悪意のあるユーザーが個人ファイルを読み取ったり変更したりする可能性があります。

WordPressは、ユーザーアカウントが所有するファイルと、別のユーザーとして実行されているApacheで正常に実行されます。 Apacheサーバーと同じグループにchgrpして、グループを書き込み可能にする必要のあるファイルとパスがいくつかあります。そうすれば、Apacheは、ユーザーが残りのファイルに完全にアクセスできるリスクを冒すことなく、必要な変更を加えることができます。

WordPressドキュメント ファイルパーミッションの変更 を読む必要があります。

2
Shane Meyers

apache2では、 ITK multi-processing-module を使用する可能性があります。これにより、宛先ユーザーのuidおよびgidで実行されている新しいプロセスが生成されます。私はこれをホスティングソリューションに大きな効果をもたらすために使用しています。

利用可能なすべての主要なディストリビューションのパッケージがあるはずです。

2
David Schmitt

mpm-itkはうまく機能し、php以外の仮想ホストにも使用できます。

より優れたスケーラビリティとパフォーマンスが必要な場合は、fastcgiプールの方が適しています。

何か新しいことを試したい場合は、php-fpm http://php-fpm.org/ 、debian lennyパッケージをチェックアウトしてください http://www.dotdeb.org/

1
user29686