IIS 移除响应头的几种方法建议参考

【问题描述】
在安全运维过程中,尤其是私有云部署情况下,经常需要对多余的请求响应头进行移除,也包括域名根节点的请求。
【解决方案】
一、原因分析
这些响应头的来源主要来自微软IIS的默认配置,但在现在的一些网络攻击中被利用,从而导致被一些安全扫描软件认为是安全漏洞。

二、操作建议
1、一般推荐采用微软的Rewrite模块进行响应头的覆写,来达成服务器信息隐藏的目的。参考【延伸阅读.1】
2、一些场景存在负载均衡或反向代理,则可以考虑部署nginx、haproxy反向代理,然后在代理上面配置移除相关响应头。
3、上述如果都存在困难,可以考虑部署一个额外的DotNetFramework4.0的自定义模块,来强制移除相关响应头,具体操作如下。
4、以上方法建议在测试环境测试完成后,在部署到生产环境中。
三、独立部署移除响应头模块
(IIS 部署,基于DotNet4.0框架以上,不依赖星空其他组件,所有版本均可配置。)
1、在iis站点根节点上部署module (解压附件中的组件RspHeadersModule.Zip):
1.1、根节点目录下C:\inetpub\wwwroot创建子目录bin;
1.2、拷贝组件到 RspHeadersModule.dll 组件到改bin目录以及下面目录下;
[driver]:\xx\Kingdee\K3Cloud\WebSite\bin
[driver]:\xx\Kingdee\K3Cloud\FileService\bin
... ... 子站点独立bin目录的都需要部署该组件;
1.3、修改目录下的web.config,如下完整版web.config;
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appSettings> <add key="RemoveResponseHeaders" value="Server;X-Powered-By;X-AspNet-Version;X-AspNetMvc-Version;eTag;" /> </appSettings> <system.webServer> <staticContent> <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="30.00:00:00" /> </staticContent> <httpErrors errorMode="Custom"> <remove statusCode="404" subStatusCode="-1" /> <error statusCode="404" path="/k3Cloud/Error.html" responseMode="ExecuteURL" /> </httpErrors> <defaultDocument> </defaultDocument> <modules runAllManagedModulesForAllRequests="true"> <add name="RemoveServerHeader" type="RspHeadersModule.RemoveServerHeader,Rsp
IIS 移除响应头的几种方法建议参考
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



