HTTPヘッダーの1つApachehttpd
再送信される応答データは「サーバ」です。たとえば、私のWebサーバーシステムは比較的最新バージョンのArch Linuxです。再送信するヘッダーは次のようによく似ています。
HTTP/1.1 404 Not Found
Date: Thu, 10 Apr 2014 17:19:27 GMT
Server: Apache/2.4.9 (Unix)
Content-Length: 1149
Connection: close
Content-Type: text/html
ServerSignature off
これは/etc/httpd/conf/httpd.conf
"Server:" ヘッダーが表示され続けます。私は試したモジュールヘッダ。私はそれを活性化し、いくつかを試しました:
<IfModule headers_module>
Header set ProcessingTime "%D"
Header set Server BigJohn
</IfModule>
上記の設定を停止して開始した後はhttpd
、HTTPヘッダーに同様のコンテンツが含まれますが、ProcessingTime: 1523
「Server:」ヘッダー行は変更されません。だから私は "mod_headers"がインストールされ、アクティブで動作していることを知っていますが、私は望んでいません。
私はこれを行うと主張する「mod_security」であることを見ましたが、mod_securityに付属している他のすべての荷物を望んでいませんでした。
修正する:
インストールされたら、mod_security
いくつかの指示が必要です。
<IfModule security2_module>
SecRuleEngine on
ServerTokens Full
SecServerSignature "Microsoft-IIS/6.0"
</IfModule>
mod_security
2.7.7用です。
答え1
mod_securityは素晴らしいですが、目標を達成するために必ずしも必要ではありません。
すべてのモードが含まれている場合は、httpd.conf
目的のタイトルを簡単に設定解除できます。コメントで述べたように、mod_headers
この機能を有効にする必要があります。
Header unset Server
# if the above doesn't work, set a default value
# use the keyword 'always' to set the header even with error'ed responses
# (e.g. if your app is down)
Header always set Server "No peeking!"
ServerSignature Off
ServerTokens Prod
http://httpd.apache.org/docs/2.4/mod/core.html#serversignature
答え2
まだ探している人のためにこれを更新してください。 HTTPヘッダーのサーバー行を変更するのに問題があります。この推奨事項は、systemdとApache 2.4.7を含むDebianブランチディストリビューションに適用されます。特にUbuntu Server LTS 14.04.03を使用しています。私が見つけたいくつかの提案は次のとおりです。
grep -Ri servertokens /etc/apache2
これにより、ServerTokens と ServerSignature が指定された /etc/apache2/conf-available/security.conf にリンクされます。したがって、/etc/apache2/apache2.confへのすべての変更は、security.confですでに指定されているディレクティブで上書きされます。
私は単にsecurity.confのディレクティブを変更し、Apacheは私が望む方法で動作し始めました。
ServerTokens Prod
ServerSignature Off
ヘッダーがサーバーに設定されていないというトピックについて、Apache開発者はこれが解決できない問題であると述べたバグレポートを見つけました。 HTTP / 1.1仕様のRFC 2616はTim Berners-Leeによって部分的に書かれており、サーバータグはオプションであると明記されていますが、明らかにこれは彼らにとって哲学的な質問です。
Qualysスキャンを満足させるために、サーバータグを「Unknown」に設定したいと思います。それで、現在libapache2-modsecurityと呼ばれるmod_securityを次のようにインストールしました。このDigitalOceanチュートリアル。頑張ってください。私が将来のすべての読者に役立つことを願っています。
答え3
サーバーID /トークンヘッダーサーバートークン「ディレクティブ(で提供されています)。Apache mod_core
HTTPDソースコードを変更したりモジュールを使用したりすること以外はmod_security
ありません。完全サーバーIDヘッダーを抑制します。
これmod_security
により、ファイル内のすべてのモジュールディレクティブ/機能を無効にし、追加のmodsecurity.conf
「手荷物」なしでサーバーヘッダーIDディレクティブのみを利用できます。
答え4
私はOracle HTTP Server 11.1.1.9(Apache 2.2.22に基づいて構築されています)で何かをテストしましたが、ある程度効果がありました。
「ServerTokens」を「none」に設定すると、「Server」ヘッダー値が削除されているように見えますが、ヘッダー自体が応答として送信されましたが、現在はNULL値があります。
サーバートークンなし
応答ヘッダーは次のとおりです。
HTTP/1.1 200 確認
日付: 2015年12月28日 月曜日 07:02:45 GMT
仕える人:
最終修正日:2015年12月27日日曜日07:29:13 GMT
。
。