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,RspHeadersModule" /> </modules> </system.webServer> </configuration>
1.3.1、挑选如上路径 [configuration/appSettings[key=RemoveResponseHeaders]] 节点进行增加修改;
1.3.2、挑选如上路径 [configuration/system.webServer/modules[name=RemoveServerHeader]] 节点进行增加修改;
2、管理站点:
2.1、拷贝组件到 RspHeadersModule.dll组件到该[driver]:\xx\Kingdee\K3Cloud\ManageSite\bin目录下;
2.2、修改目录下的web.config,在[configuration/system.webServer/modules]节点下增加如下模块
<add name="RemoveServerHeader" type="RspHeadersModule.RemoveServerHeader,RspHeadersModule" />
2.3、修改目录下的web.config,在[configuration/appSettings]节点下增加如下模块
<add key="RemoveResponseHeaders" value="Server;X-Powered-By;X-AspNet-Version;X-AspNetMvc-Version;eTag;" />
3、重启IIS;(cmd: resetiis)
4、浏览器清理缓存;
5、后续有新的需要移除的响应头变量,可配置RemoveResponseHeaders属性,末尾加入改变量名,并以分号(;)分隔即可;
6、其他站点参考上面【2、管理站点】的步骤;
【注意事项】
如果重启iis不能访问提示500错误,那么需要重启下电脑;
根节点也需要运行在DotnetFramework4.0下。
【延伸阅读】
1、【金蝶云星空 配置站点安全配置与参数】https://vip.kingdee.com/article/10581?productLineId=1
【附件】
IIS 移除响应头的几种方法建议参考
本文2024-09-23 03:48:24发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-161219.html
- 鼎捷EAI整合規範文件V3.1.07 (集團).pdf
- 鼎捷OpenAPI應用場景說明_基礎資料.pdf
- 鼎捷OpenAPI應用場景說明_財務管理.pdf
- 鼎捷T100 API設計器使用手冊T100 APIDesigner(V1.0).docx
- 鼎新e-GoB2雲端ERP B2 線上課程E6-2應付票據整批郵寄 領取.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A4使用者建立權限設定.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程C3會計開帳與會計傳票.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程E6-1應付票據.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A5-1進銷存參數設定(初階篇).pdf
- 鼎新e-GoB2雲端ERP B2 線上課程D2帳款開帳與票據開帳.pdf