web-dev-qa-db-ja.com

WWW / DIRの権限を設定し、セキュリティ上の脅威が発生していないことを確認する方法

私は独特の状況です。私は自分のプロジェクトに使用することをvpsしました。私の友人は私に彼のwordpressブログを迎えます)をホストするように頼んだ。

現在、VPSを非常に簡単に設定しています。すべてのプロジェクトは/ WWWおよびApacheにこれらのフォルダへの書き込みアクセス権があります(WWWデータ)、Ubuntu Server 12.04です。

MySQL側に問題がありません。このWPインストールには、このDBのみにアクセスできる独自のDB/username-passがあります。

しかし、彼のwp-adminパスワードが危険にさらされた場合、私のVPSのセキュリティも危険にさらされることを心配しています。

私は私に挑発/ www/projectxを撮影することを考えています。プラグインとイメージアップロードディレクトリにのみ書き込み権限を付ける。しかし、すべて同じApacheユーザーで実行されている場合、潜在的にハッカーが悪意のあるスクリプトをそれらのディレクトリにアップロードすることができ、したがってサーバー上の他のプロジェクトにアクセスすることができます。

自分自身を保護するためにできることはありますか?少なくとも部分的に?

このWPのインストールをこの特定のインストールを保護したくない、このWPインストールから他のプロジェクトを保護したいです。

1
Red Balloon

これら2つのステップは、セキュアホスティングシステムへの途中で90%+(クロスサイトエスカレーション攻撃の予防の観点から):

ステップ1:www-dataとしてすべてを実行しないでください

php-fpmのようなシステムを使用して、各サイトを独自のユーザーに実行します。このように、1つのアカウントに対する妥協点は、データベースのパスワードやその他の秘密鍵など、他のすべてのサイトの内容を自動的に読み取ることができません。

ステップ2:権限を制限します

各サイトのアクセス許可に他のサイトユーザーが何も読むことができないようにしてください。これを行うのにかわいいトリックは、各サイトのベースディレクトリのグループをいくつかの共通のグループに設定することです。すべてのWebサイトユーザーが(たぶんそれをwebsitesvariable__)、そのディレクトリ上のPERMを0701に設定することです。グループはディレクトリに入ることができません。

1
womble