Apache/httpd‘Header set Server’被忽略/覆盖

Apache/httpd‘Header set Server’被忽略/覆盖

我正在使用它VirtualHost

<IfModule headers_module>
    Header set ProcessingTime "%D"
    Header set Server "Apache 2.4"
</IfModule>

我可以看到设置ProcessingTime得很好,但是Server是默认设置的,这会透露太多有关服务器软件版本的信息。

我做错了什么?我能弄清楚标题Server最终设置在哪里吗?

我努力了:

  • sudo grep -Rin "Header" /etc/httpd/conf.d/-> 没有结果Header set Server
  • sudo grep -Rin "servertokens" /etc/httpd/conf.d/-> 绝对没有结果

Apache 版本:Apache/2.4.53 (代码)在 CentOS 上。

答案1

使用ServerTokens指示而是在服务器配置上下文中。

ServerTokens Full(或未指定)
服务器发送(例如):Server: Apache/2.4.2 (Unix) PHP/4.2.2 MyMod/1.2

ServerTokens Prod[uctOnly]
服务器发送(例如):Server: Apache

ServerTokens Major
服务器发送(例如):Server: Apache/2

ServerTokens Minor
服务器发送(例如):Server: Apache/2.4

ServerTokens Min[imal]
服务器发送(例如):Server: Apache/2.4.2

ServerTokens OS
服务器发送(例如):Server: Apache/2.4.2 (Unix)

答案2

通常人们希望隐藏服务器标头,因为一些审计员告诉他们这样做,或者他们的漏洞扫描程序不理解反向移植。

看看你的配置中的 ServerTokens手册

相关内容