ServerTokensによるサーバ情報表示の抑止

カテゴリ:Apache 2.0の設定
日時:2004/10/17 11:25

/etc/apache2/conf/commonapache2.confの設定編。

まずは、セキュリティ対策としてServerTokensディレクティブを変更する。ServerTokensディレクティブは、クライアントに返信するサーバ応答ヘッダに含める情報を制御する。デフォルトでは
ServerTokens Full
となっており、Apacheのバージョン、OS、PHPのバージョンなど、サーバの詳しい情報をクライアントに送り返す。例えば、
Server: Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2
こんな感じ。

これでは、クラッカーに対して、クラッキングのための情報を与えているようなものである。 この情報を最小限にするため、
ServerTokens Prod
に修正する。
ServerTokens ProductOnly
でもよい。これで、応答ヘッダの内容は
Server: Apache
になる。

ServerSignatureディレクティブもサーバ情報に関係しているが、こちらはデフォルトでOffになっているし、Apache 2.0.44からはServerTokensディレクティブでServerSignatureの情報も制御するようになっているので、特に修正しなくてもいいだろう。

なお、ServerTokensディレクティブを修正したからといって、ApacheやPHPのセキュリティホールへの攻撃が防げるわけではない。Apacheに脆弱性があれば、ServerTokensディレクティブでヘッダ情報を抑止してもいつかクラックされる。

ServerTokensディレクティブは、「クラッカーに楽をさせない」という程度にすぎないと考えるべきだろう。

ServerTokensディレクティブについて、詳しくはApacheのドキュメントを参照。