web-dev-qa-db-ja.com

Directory /(root)REALLYの「すべての付与が必要」とはどういう意味ですか? (CentOS 7上のApache 2.4

確かに、この質問は最初は本当に愚かに見えます。しかし、私はこれについて「セカンドオピニオン」が必要です。私自身でいくつかの研究をしましたが、これについてはまだわかりません。

デフォルトでは、CentOS7のApache構成およびこれまでに知っているほとんどすべてのDistroは、通常、次のようなディレクトリ文を使用して、ROOTファイルシステム(/)への再帰的なアクセスを拒否します。

デフォルト:/etc/httpd/conf/httpd.conf

<Directory />
    AllowOverride none
    Require all denied 
</Directory>

通常、htmlまたはその他のWebサーバーコンテンツを含むファイルシステムの部分へのアクセス許可を「緩和」するいくつかのディレクトリステートメント(ブロック)が続きます。

今、私は最近Apacheの設定ファイルに次の変更を要求/要求している「some Company」の「some Web App」に対処する必要があります。

ソフトウェア会社からの要求:/etc/httpd/conf/httpd.conf

<Directory />
    AllowOverride none
    Require all granted
</Directory>

これは私の心の中にいくつかの赤い旗を掲げ、私はネット上でこれを調査しようとしました。この構成が効果的に意味することを明確に示すものはまだ見つかりませんでした。しかしiが推測します、これにより、ユーザーグループ "other"またはApacheサービスアカウントまたはサービスグル​​ープによって読み取り可能な、Linuxサーバー全体のほとんどすべてのファイルへの読み取りアクセスが許可されます。だから、私が正しいなら、インターネットのウェブサーバーでこのようなことをするのは本当に本当に素晴らしいアイデアでしょう。

私はこの仮定で正しいですか?または私はここで何かが欠けていますか?

これに関するヒント/ヒント/説明をありがとう!

よろしくアクセル

2
Axel Werner

これは私が何度か遭遇した問題であり、Apache 2.2からApache 2.4への用語の変更に起因します( 詳細はこちら )。以前は「Xの注文、Xからの許可または拒否」で対処されていたアクセス制御オプションは、「Xが必要」で管理できるようになりました。最も単純なユースケースの例は...

Apache 2.2:

Order allow,deny
Allow from all

..最近のApacheでは次のようになります...

Apache 2.4:

Require all granted

基本的に、はい-この変更により、サーバー上のアクセス権が大幅に失われると仮定するのは正しいことです(もちろん、他のすべてを等しく保持します)。

1
Matthew Haeck