IIS(Internet Information Services)是由微软公司推出的一种用于Windows操作系统的Web服务组件。它提供了一整套功能,支持在Windows环境中搭建Web、FTP等服务。本文将介绍如何在IIS搭建的Web服务中隐藏响应头中的服务器版本信息。
背景信息
Windows Server上的IIS Web服务默认会在响应体中包含IIS版本信息,这可能带来安全隐患,攻击者可能利用已知漏洞攻击您的服务。您可以通过修改IIS默认配置隐藏版本信息。
以下为默认配置下IIS返回的HTTP响应头示例,其中 Server 字段暴露了IIS版本信息:
Accept-Ranges: bytes
Content-Length: 703
Content-Type: text/html
Date: Mon, 24 Mar 2025 07:00:49 GMT
Etag: "9b6c59526d9cdb1:0"
Last-Modified: Mon, 24 Mar 2025 03:32:08 GMT
Server: Microsoft-IIS/10.0
操作步骤
在对实例进行配置修改之前,建议您备份配置文件,或通过为实例创建快照,以确保数据的安全性。
以下示例以IIS 10.0版本为例,为您介绍如何通过URL Rewrite组件隐藏IISWeb服务响应头中的IIS服务版本信息。
-
查看是否安装
URL Rewrite组件。-
在您的Windows Server实例中,打开服务器管理器,单击左侧的IIS菜单。
-
在右侧服务器区域,右键单击相应的服务器名称,然后在弹出的菜单中单击Internet Information Services(IIS)管理器。
-
在打开的Internet Information Services(IIS)管理器页面左侧,单击您想要管理的服务器名称。如果在右侧IIS页签中找到URL Rewrite组件,则表明已安装URL Rewrite组件。如未找到,请参阅微软官方文档安装URL Rewrite组件,具体操作,请参见URL Rewrite : The Official Microsoft IIS Site。
-
-
修改IIS配置文件以隐藏响应头中的
IIS版本信息。-
在Internet Information Services(IIS)管理器页面的左侧依次单击服务器名称、网站、并最终选中您的网站,然后在右侧点击浏览以打开网站根目录。
-
在网站根目录中新建或打开
web.config配置文件。-
新建配置文件:请在配置文件中添加如下内容。
-
打开已有配置文件:请根据现有内容新增下述XML配置项,并确保修改后的配置文件符合XML格式要求。
<?xml version="1.0" encoding="utf-8"?> <configuration> <location path="." inheritInChildApplications="false"> <system.webServer> <rewrite> <outboundRules> <rule name="移除响应头中的IIS SERVER版本信息"> <match serverVariable="RESPONSE_SERVER" pattern=".*" /> <action type="Rewrite" /> </rule> </outboundRules> </rewrite> </system.webServer> </location> </configuration>
-
-
-
验证配置是否生效。
通过浏览器访问网站页面,并使用开发者工具查看响应头中的
IIS SERVER版本信息是否为空。如下所示,表明配置生效。Accept-Ranges: bytes Content-Length: 703 Content-Type: text/html Date: Mon, 24 Mar 2025 06:57:42 GMT Etag: "9b6c59526d9cdb1:0" Last-Modified: Mon, 24 Mar 2025 03:32:08 GMT Server:
相关文档
-
您可以参见如下文档,以了解如何为IIS服务配置多站点。
-
如果您在使用IIS服务的过程中遇到问题,可以参考Windows实例IIS Web网站访问故障。