概述
Web服务器直接与Internet相连,而Windows服务器一般提供Web服务的就是IIS,所以IIS自身的安全性至关重要。
最小安装原则
在IIS安装过程中,根据具体的业务需求,只安装必要的组件,以避免安装其他一切不必要的组件带来的安全风险。如网站正常运行只需要ASP环境,那我们就没必要安装.net组件。
删除默认站点
关闭并删除默认FTP站点,默认Web站点等默认的东西,一般也不建议在默认站点上建立自己地站点。
禁用不必要的Web扩展
检查是否有不必要的Web服务扩展,禁用掉不需要用到的。
站点文件不要放在系统盘
新站点的网站文件,不要放在系统盘,要放在其他分区里。
IIS访问权限设置
如果IIS中有多个网站,建议为每个网站配置不同的匿名访问账户。新建一个账号test,加入Guests组。
在“网站属性”—>“目录安全性”—>“身份验证和访问控制”,把“启用匿名访问”处,用刚新建的账户代替默认账户,如下图:
网站目录权限配置
网站目录权限配置也是很重要的一部分,某些目录有写入权限,一定不要分配执行权限;某些目录有执行权限,一定不要分配写入权限;网站上传目录和数据库目录一般需要分配“写入”权限,但一定不要分配执行权限;其他目录一般只分配“读取”和“记录访问”权限即可。
某些需要保存用户上传的图片等目录,必须在执行权限里设为无,否则上传的木马文件或者变形木马都有可能被调用执行。
只保留必要的应用程序扩展
根据网站的实际情况,只保留必要的应用程序扩展,其他的一律删除,尤其是像cer、asa这样极其危险的扩展,而且一般网站也不需要它。
属性->主目录->执行权限右边的配置:
日志文件配置
无论是什么服务器,日志都是应该高度重视的部分。当发生安全事件时,我们可以通过分析日志来还原攻击过程,否则将无从查起。有条件的话,可以将日志发送到专门的日志服务器保存。先检查是否启用了日志记录,如未启用,则启用它。日志格式设置为W3C扩展日志格式,IIS中默认是启用日志记录的。接着修改IIS日志文件保存路径,默认保存在“C:\WINDOWS\system32\LogFiles”目录下,这里修改为自定义路径。建议保存在非系统盘路径,并且IIS日志文件所在目录只允许Administrators组用户和SYSTEM用户访问。
防止信息泄露禁止向客户端发送详细的ASP错误信息
可以在“IIS管理器”—>“属性”—>“主目录”—>“配置”—>“调试”,选择“向客户端发送下列文本错误消息”项,自定义出错时返回的错误信息。
修改默认错误页面
“IIS管理器”—>“属性”—>“自定义错误”,用自定义的错误页面替换默认的默认页面。
自定义IIS Banner信息
默认Banner信息会泄露服务器类型、版本等相关信息,我们需要对其进修改,这样可以防止信息泄露,还可以骗过一些自动化扫描、攻击工具。修改默认HTTP头信息方法: