バージョン番号の通知を隠す方法
Modified: 14 August 2002
Apacheはデフォルトでは、要求があれば使っているバージョンの通知を返します。セキュリティホールを攻撃を面倒にするために、通知をしないように設定しましょう。
デフォルトの状態
telnetでポートを指定して接続し、"GET / HTTP/1.0"のコマンド入力すると、以下のように、OSや、Apacheのバージョン番号、組み込まれているモジュールの種類やバージョン番号などのレスポンスヘッダーが表示されます。
$ telnet rh73-94-web.tomo.ac http
Trying 192.168.0.94...
Connected to rh73-94-web.tomo.ac.
Escape character is '^]'.
GET / HTTP/1.0
HTTP/1.1 200 OK
Date: Tue, 13 Aug 2002 22:42:56 GMT
Server: Apache/1.3.23 (Unix) (Red-Hat/Linux) mod_ssl/2.8.7 OpenSSL/0.9.6b DAV/1.0.3 PHP/4.1.2 mod_perl/1.26
Last-Modified: Tue, 13 Aug 2002 22:42:40 GMT
ETag: "3841c-c3-3d598b60"
Accept-Ranges: bytes
Content-Length: 195
Connection: close
Content-Type: text/html
:
:
:
Connection closed by foreign host.
$
"ServerTokens"の変更
レスポンスヘッダーの情報は、"ServerTokens"を、"http.conf"に記述することで変更できます。
Minimal Apacheのバージョン番号だけ表示されます ProductOnly Apacheとだけ表示されます OS ApacheとOSの種類が表示されます Full ApacheとOSの種類、組み込みモジュールが表示されます デフォルトは、"Full"になっています。
"OS"を指定
"http.conf"を以下のように指定します。
ServerTokens OS 以下の情報が返ってきます。
Server: Apache/1.3.23 (Unix) (Red-Hat/Linux)
"Minimal"を指定
"http.conf"を以下のように指定します。
ServerTokens Minimal 以下の情報が返ってきます。
Server: Apache/1.3.23
"ProductOnly"を指定
"http.conf"を以下のように指定します。
ServerTokens ProductOnly 以下の情報が返ってきます。
Server: Apache
"ServerSignature"の変更
エラーページなどに表示される署名の情報は、"http.conf"に記述してある"ServerSignature" を、変更することで抑制できます。
On エラーページにApacheのバージョン番号が表示されます Off エラーページにApacheとだけ表示されます エラーページにApacheのバージョン番号とServerAdminで指定したメールアドレスが表示されます デフォルトは、"Off"ですが、"http.conf"内に、"ServerSignature On"と指定されています。