iis ( internet information server ,互联网信息服务)

63
IIS Internet Information Se rver 互互互互互互互互 ,) 本本本本 IIS 本本本本 IIS 本本本本本 IIS 本本本本本 本本 IIS 本本本本本

Upload: hasad-beasley

Post on 01-Jan-2016

114 views

Category:

Documents


5 download

DESCRIPTION

IIS ( Internet Information Server ,互联网信息服务). 本章内容 IIS 基本配置 IIS 的安全问题 IIS 的辅助工具 提高 IIS 效率的方法. IIS 简介. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: IIS ( Internet Information Server ,互联网信息服务)

IIS ( Internet Information Server ,互联网信息服务)

本章内容IIS 基本配置IIS 的安全问题IIS 的辅助工具提高 IIS 效率的方法

Page 2: IIS ( Internet Information Server ,互联网信息服务)

IIS 简介

IIS ( Internet Information Server ,互联网信息服务)是一种 Web (网页)服务组件,其中包括 Web 服务器、 FTP 服务器、 NNTP服务器和 SMTP 服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。本章内容讲述 Windows 2000 高级服务器版中自带的 IIS 5.0 的配置和管理方法。 (目前最高版本是 IIS 6.0)

Page 3: IIS ( Internet Information Server ,互联网信息服务)

IIS 是扮演所有用户端服务要求的接口,和一般结构不同的是对 ASP 文件的处理方式,当 IIS 收到 ASP 文件的服务要求时,它会调用必须的 ISAPI 或 DLL 程序,对 ASP 程序进行解释执行,经过处理后, IIS 再将结果转为 HTML 格式传回给使用者的 Web 浏览器。

Page 4: IIS ( Internet Information Server ,互联网信息服务)

IIS 的安装和运行

进入“控制面板”,依次选“添加 / 删除程序→添加 / 删除 Windows 组件”,将“ Internet信息服务( IIS )”前的小钩去掉(如有),重新勾选中后按提示操作即可完成 IIS 组件的添加。用这种方法添加的 IIS 组件中将包括 Web 、 FTP 、 NNTP 和 SMTP 等全部四项服务。

 

Page 5: IIS ( Internet Information Server ,互联网信息服务)
Page 6: IIS ( Internet Information Server ,互联网信息服务)
Page 7: IIS ( Internet Information Server ,互联网信息服务)
Page 8: IIS ( Internet Information Server ,互联网信息服务)

IIS 的运行

 当 IIS 添加成功之后,再进入“开始→程序→管理工具→ Internet 服务管理器”以打开 IIS管理器,对于有“已停止”字样的服务,均在其上单击右键,选“启动”来开启。

Page 9: IIS ( Internet Information Server ,互联网信息服务)

建立第一个 Web 站点

请先在“默认 Web 站点”上单击右键,选“属性”,以进入名为“默认 Web 站点属性”设置界面。1 .修改绑定的 IP 地址:转到“ Web 站点”窗口,再在“ IP 地址”后的下拉菜单中选择所需用到的本机IP 地址“ 192.168.0.1” 。

Page 10: IIS ( Internet Information Server ,互联网信息服务)

2 .修改主目录:转到“主目录”窗口,再在“本地路径”输入(或用“浏览”按钮选择)好自己网页所在的“ D:\Wy” 目录。

Page 11: IIS ( Internet Information Server ,互联网信息服务)

3 .添加虚拟目录:比如你的主目录在“ D:\Wy” 下,而你想输入“ 192.168.0.1/test” 的格式就可调出“ E:\All” 中的网页文件,这里面的“ test” 就是虚拟目录。请在“默认 Web 站点”上单击右键,选“新建→虚拟目录”,依次在“别名”处输入“ test” ,在“目录”处输入“ E:\All” 后再按提示操作即可添加成功。

Page 12: IIS ( Internet Information Server ,互联网信息服务)

4 .添加首页文件名:转到“文档”窗口,再按“添加”按钮,根据提示在“默认文档名”后输入自己网页的首页文件名“ Index.htm” 。  

Page 13: IIS ( Internet Information Server ,互联网信息服务)

添加多个 Web 站点

多个 IP 对应多个 Web 站点   如果本机已绑定了多个 IP 地址,想利用不同的 I

P 地址得出不同的 Web 页面,则只需在“默认 Web站点”处单击右键,选“新建→站点”,然后根据提示在“说明”处输入任意用于说明它的内容(比如为“我的第二个 Web 站点”)、在“输入 Web 站点使用的 IP 地址”的下拉菜单处选中需给它绑定的 IP 地址即可;当建立好此 Web 站点之后,再按上步的方法进行相应设置。

Page 14: IIS ( Internet Information Server ,互联网信息服务)
Page 15: IIS ( Internet Information Server ,互联网信息服务)

一个 IP 地址对应多个 Web 站点

当按上步的方法建立好所有的 Web 站点后,对于做虚拟主机,可以通过给各 Web 站点设不同的端口号来实现,比如给一个 Web 站点设为 80 ,一个设为 81 ,一个设为 82…… (如图 2 ),则对于端口号是 80 的Web 站点,访问格式仍然直接是 IP 地址就可以了,而对于绑定其他端口号的 Web 站点,访问时必须在 IP 地址后面加上相应的端口号,也即使用如“ http://192.168.0.1:81” 的格式。

Page 16: IIS ( Internet Information Server ,互联网信息服务)
Page 17: IIS ( Internet Information Server ,互联网信息服务)

很显然,改了端口号之后使用起来就麻烦些。如果你已在 DNS服务器中将所有你需要的域名都已经映射到了此惟一的 IP 地址,则用设不同“主机头名”的方法,可以让你直接用域名来完成对不同 Web 站点的访问。比如你本机只有一个 IP 地址为 192.168.0.1 ,你已经建立(或设置)好了两个 Web 站点,一个是“默认 Web 站点”,一个是“我的第二个 Web 站点”,现在你想输入“ www.enanshan.com” 可直接访问前者,输入“ www.popunet.com” 可直接访问后者。其操作步骤如下:

Page 18: IIS ( Internet Information Server ,互联网信息服务)

   ( 1 )请确保已先在 DNS 服务器中将你这两个域

名都已映射到了那个 IP 地址上;并确保所有的 Web站点的端口号均保持为 80 这个默认值。

  ( 2 )再依次选“默认 Web 站点→右键→属性→ Web 站点”,单击“ IP 地址”右侧的“高级”按钮,在“此站点有多个标识下”双击已有的那个 IP 地址(或单击选中它后再按“编辑”按钮),然后在“主机头名”下输入“ www.enanshan.com” 再按“确定”按钮保存退出( 3 )接着按上步同样的方法为“我的第二个 Web站点”设好新的主机头名为“ www.xxxx.com” 即可。

  ( 4 )最后,打开你的 IE 浏览器,在地址栏输入不同的网址,就可以调出不同 Web 站点的内容了。

Page 19: IIS ( Internet Information Server ,互联网信息服务)
Page 20: IIS ( Internet Information Server ,互联网信息服务)

3 .多个域名对应同个 Web 站点

你只需先将某个 IP 地址绑定到 Web 站点上,再在 DNS 服务器中,将所需域名全部映射向你的这个 IP 地址上,则你在浏览器中输入任何一个域名,都会直接得到所设置好的那个网站的内容。

Page 21: IIS ( Internet Information Server ,互联网信息服务)

对 IIS 服务的远程管理

1 .在“管理 Web 站点”上单击右键,选“属性”,再进入“ Web 站点”窗口,选择好“ IP 地址”。2 .转到“目录安全性”窗口,单击“ IP 地址及域名限制”下的“编辑”按钮,点选中“授权访问”以能接受客户端从本机之外的地方对 IIS 进行管理;最后单击“确定”按钮。

Page 22: IIS ( Internet Information Server ,互联网信息服务)

3 .则在任意计算机的浏览器中输入如“ http://192.168.0.1:3598” ( 3598 为其端口号)的格式后,将会出现一个密码询问窗口,输入管理员帐号名( Administrator )和相应密码之后就可登录成功,现在就可以在浏览器中对 IIS 进行远程管理了!在这里可以管理的范围主要包括对 Web 站点和 FTP 站点进行的新建、修改、启动、停止和删除等操作。

Page 23: IIS ( Internet Information Server ,互联网信息服务)

IIS 常见漏洞

( 1 ) Null.htw    IIS 如果运行了 Index Server 就包含了一个通过 Null.htw 有关的漏洞,即服

务器上不存在此 .htw 结尾的文件。这个漏洞会导致显示 ASP脚本的源代码, global.asa 里面包含了用户帐户等敏感信息。如果攻击者提供特殊的 URL 请求给 IIS 就可以跳出虚拟目录的限制,进行逻辑分区和 ROOT 目录的访问。而这个 "hit-highlighting" 功能在 Index Server 中没有充分防止各种类型文件的请求,所以导致攻击者访问服务器上的任意文件。 Null.htw 功能可以从用户输入中获得 3 个变量:

   CiWebhitsfile   CiRestriction   CiHiliteType

  你可通过下列方法传递变量来获得如 default.asp 的源代码:    http://www. 目标机 .com/null.htw?CiWebhitsfile=/default.asp%20&%20

CiRestriction=none%20&%20&CiHiliteType=full 其中不需要一个合法的 .htw 文件是因为虚拟文件已经存储在内存中了。

Page 24: IIS ( Internet Information Server ,互联网信息服务)

 ( 3 ) +.htr Bug   这个漏洞是由 NSFOCUS 发现的,对有些 ASA 和 ASP追加 +.htr 的 URL 请求就会导致文件源代码的泄露:http://www. 目标机 .com/global.asa+.htr

Page 25: IIS ( Internet Information Server ,互联网信息服务)

4 ) NT Site Server Adsamples 漏洞   通过请求 site.csc ,一般保存在 /adsampl

es/config/site.csc 中,攻击者可能获得一些如数据库中的 DSN , UID 和 PASS 的一些信息,如:

   http://www. 目标机 .com/adsamples/config/site.csc

Page 26: IIS ( Internet Information Server ,互联网信息服务)

( 5 ) webhits.dll & .htw   这个 hit-highligting 功能是由 Index Server 提供的允许一个

WEB 用户在文档上 highlighted (突出)其原始搜索的条目,这个文档的名字通过变量 CiWebhitsfile 传递给 .htw 文件, Webhits.dll 是一个 ISAPI 应用程序来处理请求,打开文件并返回结果,当用户控制了 CiWebhitsfile参数传递给 .htw 时,他们就可以请求任意文件,结果就是导致可以查看 ASP源码和其他脚本文件内容。要了解你是否存在这个漏洞,你可以请求如下条目:http://www. 目标机 .com/nosuchfile.htw

  如果你从服务器端获得如下信息:    format of the QUERY_STRING is invalid   这就表示你存在这个漏洞。

Page 27: IIS ( Internet Information Server ,互联网信息服务)

ISM.DLL 缓冲截断漏洞

这个漏洞存在于 IIS4.0 和 5.0 中,允许攻击者查看任意文件内容和源代码。通过在文件 名后面追加近 230 个 + 或者 ?%20? (这些表示空格)并追加 ?.htr? 的特殊请求给 IIS ,会使 IIS 认为客户端请求的是 ?.htr? 文件,而 .htr 文件的后缀映射到 ISM.DLL ISAPI 应用程序,这样 IIS 就把这个 .htr 请求转交给这个 DLL 文件,然后 ISM.DLL 程序把传递过来的文件打开和执行,但在 ISM.DLL 截断信息之前 ,缓冲区发送一个断开的 .Htr 并会延迟一段时间来返回一些你要打开的文件内容。可是要注意,除非 WEB 服务停止并重启过,否则这攻击只能有效执行一次。如果已经发送过一个 .htr 请求到机器上 ,那么这攻击会失效 . 它只能在 ISM.DLL 第一次装入内存时工作。

   http://www. 目标机 .com/global.asa%20%20 ( ...《 =230 ) global.asa.htr

Page 28: IIS ( Internet Information Server ,互联网信息服务)

IIS 存在的 Unicode 解析错误漏洞

   NSFOCUS 安全小组发现微软 IIS 4.0 和 IIS 5.0 在 Unicode 字符解码的实现中存在一个安全漏洞,导致用户可以远程通过 IIS 执行任意命令。当 IIS 打开文件时,如果该文件名包含 unicode 字符,它会对其进行解码,如果用户提供一些特殊的编码,将导致 IIS错误的打开或者执行某些 web根目录以外的文件。

  你可以使用下面的方法利用这个漏洞:   ( 1 ) 如果系统包含某个可执行目录,就可能执行任意系统命令。

下面的 URL 可能列出当前目录的内容:   http://www. 目标机 .com/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir

  ( 2 ) 利用这个漏洞查看系统文件内容也是可能的:    http://www. 目标机 .com/a.asp/..%c1%1c../..%c1%1c../winnt/win.ini

  这个漏洞是针对中文操作平台,你也可以使用 "%c0%af" 或者 "%c1%9c" 来测试英文版本,原因就是编码不同。

Page 29: IIS ( Internet Information Server ,互联网信息服务)

Win2000+IIS 5.0 安全配置规范

Windows 2000 安全配置  ■. 确保所有磁盘分区为 NTFS 分区

  ■. 操作系统、 Web 主目录、日志分别安装在不同的分区  ■. 不要安装不需要的协议,比如 IPX/SPX, NetBIOS?  ■. 不要安装其它任何操作系统  ■. 安装 Service Pack   ■. 安装 hotfix ,一般需要安装如下补丁   * Q260347_W2K_sp2_x86_cn(IISCrosssite)   * Q262694_W2K_SP2_x86_CN(resetBrowseForm)   * Q269049_W2K_SP2_x86_CN(shellpath)   * Q269862_W2K_SP2_x86_CN(unicode)   * Q270676_W2K_SP2_x86_CN(shurufa)   * Q272743_W2K_SP2_x86_CN(NTLM)   * Q277873_W2K_sp2_x86_CN(filerequest)   * Q278499_W2K_sp2_x86_CN(indexserv)   * Q280322_W2K_sp2_x86_CN(malwebform)   * q285851_w2k_sp3_x86_cn(netdde)  具体可参考微软网站: http://www.microsoft.com/Windows2000/downloads

Page 30: IIS ( Internet Information Server ,互联网信息服务)

■. 关闭所有不需要的服务 * Alerter (disable)

   * ClipBook Server (disable)   * Computer Browser (disable)   * DHCP Client (disable)   * Directory Replicator (disable)   * FTP publishing service (disable)   * License Logging Service (disable)   * Messenger (disable)   * Netlogon (disable)   * Network DDE (disable)   * Network DDE DSDM (disable)   * Network Monitor (disable)   * Plug and Play (disable after all hardware configuration)   * Remote Access Server (disable)   * Remote Procedure Call (RPC) locater (disable)   * Schedule (disable)   * Server (disable)   * Simple Services (disable)   * Spooler (disable)   * TCP/IP Netbios Helper (disable)   * Telephone Service (disable)

Page 31: IIS ( Internet Information Server ,互联网信息服务)

 在必要时禁止如下服务:   * SNMP service (optional)   * SNMP trap (optional)   * UPS (optional  设置如下服务为自动启动:   * Eventlog ( required )   * NT LM Security Provider (required)   * RPC service (required)   * WWW (required)   * Workstation (leave service on:will be disabled later in the document)   * MSDTC (required)   * Protected Storage (required)  

Page 32: IIS ( Internet Information Server ,互联网信息服务)

■. 删除 OS/2 和 POSIX 子系统 :   删除如下目录的任何键:    HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\OS/2 Subsystem for NT  删除如下的键:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Environment\Os2LibPath  删除如下的键:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\OptionalHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\PosixHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\Os2  删除如下目录:   c:\winnt\system32\os2

Page 33: IIS ( Internet Information Server ,互联网信息服务)

■. 帐号和密码策略

   1 ) 保证禁止 guest帐号   2 ) 将 administrator 改名为比较难猜的帐号   3 ) 密码唯一性:记录上次的 6 个密码   4 ) 最短密码期限: 2   5 ) 密码最长期限: 42   6 ) 最短密码长度: 8   7 ) 密码复杂化 (passfilt.dll) :启用   8 ) 用户必须登录方能更改密码:启用   9 ) 帐号失败登录锁定的门限: 6   10 )锁定后重新启用的时间间隔: 720 分钟

Page 34: IIS ( Internet Information Server ,互联网信息服务)

■ .保护文件和目录

  将 C:\winnt, C:\winnt\config, C:\winnt\system32, C:\winnt\system 等目录的访问权限做限制,限制 everyone 的写权限,限制users 组的读写权限  ■.注册表一些条目的修改   1 ) 去除 logon 对话框中的 shutdown 按钮  将 HKEY_LOCAL_MACHINE\SOFTWARE   \Microsoft\Windows NT\Current Version\Winlogon\ 中   ShutdownWithoutLogon REG_SZ 值设为 0   2 ) 去除 logon 信息的 cashing 功能  将 HKEY_LOCAL_MACHINE\SOFTWARE   \Microsoft\Windows NT\Current Version\Winlogon\ 中   CachedLogonsCount REG_SZ 值设为 0

Page 35: IIS ( Internet Information Server ,互联网信息服务)

3 ) 隐藏上次登陆的用户名  将 HKEY_LOCAL_MACHINE\SOFTWARE   \Microsoft\Windows NT\Current Version\Winlogon\ 中   DontDisplayLastUserName REG_SZ 值设为 1   4 )限制 LSA匿名访问  将 HKEY_LOCAL_MACHINE\SYSTEM   \CurrentControlSet\Control\LSA 中   RestricAnonymous REG_DWORD 值设为 1   5 ) 去除所有网络共享  将 HKEY_LOCAL_MACHINE\SYSTEM   \CurrentControlSet\Services\LanManServer\Parameters\ 中   AutoShareServer REG_DWORD 值设为 0  ■ . 启用 TCP/IP 过滤  只允许 TCP 端口 80 和 443 (如果使用 SSL )  不允许 UDP 端口  只允许 IP Protocol 6 (TCP)

Page 36: IIS ( Internet Information Server ,互联网信息服务)

■. 移动部分重要文件并加访问控制:   创建一个只有系统管理员能够访问的目录,将 system32 目录下的一些重要文件移动到此目录:   xcopy.exe, wscript.exe, cscript.exe, net.exe, ftp.exe, telnet.exe,arp.exe,   edlin.exe,ping.exe,route.exe,at.exe,finger.exe,posix.exe,rsh.exe,atsvc.exe,   qbasic.exe,runonce.exe,syskey.exe,cacls.exe, ipconfig.exe, rcp.exe,   secfixup.exe, nbtstat.exe, rdisk.exe, debug.exe, regedt32.exe, regedit.exe,   edit.com, netstat.exe, tracert.exe, nslookup.exe, rexec.exe, cmd.exe  ■.安装防病毒软件

Page 37: IIS ( Internet Information Server ,互联网信息服务)

■. 可以下载 Hisecweb.inf 安全模板来配置   Http://download.microsoft.com/downl...US/hisecweb.exe  该模板配置基本的 Windows 2000 系统安全策略。   将该模板复制到 %windir%\security\templates 目录。  打开“安全模板”工具,查看这些设置。   打开“安全配置和分析”工具,然后装载该模板。  右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即分析计算机”。   等候操作完成。   查看结果,如有必要就更新该模板。   右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即配置计算机”。

Page 38: IIS ( Internet Information Server ,互联网信息服务)

IIS 的安全配置

  ■. 关闭并删除默认站点:   默认 FTP 站点  默认 Web 站点  管理 Web 站点  ■. 建立自己的站点,与系统不在一个分区,如   D:\wwwroot3 . 建立 E:\Logfiles 目录,以后建立站点时的日志文件均位于此目录,确保此目录上的访问控制权限是: Administrators(完全控制) System (完全控制)  ■. 删除 IIS 的部分目录:    IISHelp C:\winnt\help\iishelp    IISAdmin C:\system32\inetsrv\iisadmin    MSADC C:\Program Files\Common Files\System\msadc\  删除 C:\\inetpub

Page 39: IIS ( Internet Information Server ,互联网信息服务)

■. 删除不必要的 IIS映射和扩展:    IIS 被预先配置为支持常用的文件名扩展如 .asp 和 .shtm 文件。 IIS 接收到这些类型的文件请求时,该调用由 DLL 处理。如果您不使用其中的某些扩展或功能,则应删除该  映射,步骤如下:   打开 Internet 服务管理器:  选择计算机名,点鼠标右键,选择属性:   然后选择编辑  然后选择主目录, 点击配置  选择扩展名 \".htw\",\".htr\",\".idc\",\".ida\",\".idq\" 和 \".printer\" ,点击删除  如果不使用 server side include ,则删除 \".shtm\" \".stm\" 和 \".shtml\"

Page 40: IIS ( Internet Information Server ,互联网信息服务)

■. 禁用父路径 :  “父路径”选项允许您在对诸如 MapPath 函数调用中使用“ ..” 。在默认情况下,该选项  处于启用状态,应该禁用它。   禁用该选项的步骤如下:  右键单击该 Web 站点的根,然后从上下文菜单中选择“属性”。   单击“主目录”选项卡。   单击“配置”。   单击“应用程序选项”选项卡。   取消选择“启用父路径”复选框。

Page 41: IIS ( Internet Information Server ,互联网信息服务)

 ■ . 在虚拟目录上设置访问控制权限   主页使用的文件按照文件类型应使用不同的访问控制列表:    CGI (.exe, .dll, .cmd, .pl)    Everyone (X)    Administrators (完全控制)   System (完全控制)  脚本文件 (.asp)    Everyone (X)    Administrators (完全控制)    System (完全控制)    include 文件 (.inc, .shtm, .shtml)    Everyone (X)    Administrators (完全控制)   System (完全控制)   静态内容 (.txt, .gif, .jpg, .html)    Everyone (R)    Administrators (完全控制)    System (完全控制)   在创建 Web 站点时,没有必要在每个文件上设置访问控制权限,应该为每个文件类型创建一个新目录,然后在每个目录上设置访问控制权限、允许访问控制权限传给各个文件。  例如,目录结构可为以下形式:    D:\wwwroot\myserver\static (.html)    D:\wwwroot\myserver\include (.inc)    D:\wwwroot\myserver \script (.asp)    D:\wwwroot\myserver \executable (.dll)   D:\wwwroot\myserver\images (.gif, .jpeg)

Page 42: IIS ( Internet Information Server ,互联网信息服务)

■. 启用日志记录

  确定服务器是否被攻击时,日志记录是极其重要的。  应使用 W3C 扩展日志记录格式,步骤如下:   打开 Internet 服务管理器:  右键单击站点,然后从上下文菜单中选择“属性”。   单击“ Web 站点”选项卡。   选中“启用日志记录”复选框。  从“活动日志格式”下拉列表中选择“ W3C 扩展日志文件格式”。   单击“属性”。  单击“扩展属性”选项卡,然后设置以下属性:    * 客户 IP 地址    * 用户名    * 方法    * URI 资源    * HTTP 状态    * Win32 状态    * 用户代理    * 服务器 IP 地址    * 服务器端口

Page 43: IIS ( Internet Information Server ,互联网信息服务)

IIS 的辅助工具

使用 MetaBase ,管理员可以完成关于 IIS 的所有工作,例如,建立一个虚拟目录;停止、启动或暂停 Web 站点;建立、删除、禁止或启用应用程序。微软提供了一个可视化工具 MetaEdit帮助你读写MetaBase ,你可以在这里下载它的最新版本。为了更有效地利用MetaBase ,你应该试一下命令行接口 ---IIS Administration Script ,简称为 adsutil.vbs ,你可以在 C:\inetpub\adminscripts 或者 %SystemRoot%\system32\inetsrv\adminsamples 目录下找到它。

Page 44: IIS ( Internet Information Server ,互联网信息服务)

IIS 的辅助工具 -- 站点内容压缩

可以使用 pipeboost压缩站点功能

Page 45: IIS ( Internet Information Server ,互联网信息服务)

IIS 的辅助工具 ---Web 应用程序缓存

  你可以把不同的文件或目录设置过期时间,打开 IIS 信息服务器,右击站点内容,单击属性,在跳出来的窗体中你就可以进行相应的设置了。如果你想让开发者自己设置,请使用 CacheRight 、 XCache 这些软件

Page 46: IIS ( Internet Information Server ,互联网信息服务)

IIS 的辅助工具 --- 站点的安全

找出你的服务器信息和操作系统信息是攻击者的第一个目标,所以不要暴露你的 HTTP头让别人知道你运行的是 IIS ,使用 ServerMask这类软件将 HTTP头删除或替换掉。其次,你可以通过删除不必要的文件扩展名来进一步安装你的服务器环境。另外,你还可以扫描有问题的 URL 请求,微软提供了一个免费工具 --URLScan 。

Page 47: IIS ( Internet Information Server ,互联网信息服务)

IIS 的辅助工具 --- 补丁

下载安装最新的补丁。你可以到微软的站点,也可以到 http://www.cert.org/,用 IIS 作为关键词查询。

Page 48: IIS ( Internet Information Server ,互联网信息服务)

IIS 信息服务器排错

IIS 服务器出错的原因是复杂的。象服务启动失败、 IIS 进程中断或者站点不能启动这些错误都会在系统日志中记录一个错误事件。不论IIS 出现何种错误,在确定排错方案之前,都应先使用事件查看器查阅系统日志所记录的相关事件。某些错误显然是由服务器硬件的损坏而造成的,而另一些由于软件原因造成的错误往往不易察觉。

Page 49: IIS ( Internet Information Server ,互联网信息服务)

重新启动 IIS

大多数软件问题可以通过重新启动到方法得以解决。作为 IIS5.0 的新功能之一,我们可以在不重新启动计算机的情况下重启 IIS 服务,甚至相当严重的问题都可以采用这种方法解决。重新启动 IIS 服务可以强迫系统重置 IIS 进程的内存空间,故由于内存错误引起的问题可以得到解决。重启 IIS 的方法主要用于下列情况:网站应用程序瘫痪、且不能有效加以控制;网站应用程序工作不正常或者不稳定。重新启动 IIS 服务的过程中,全部当前连接都不能保留,且重启期间服务器上的全部站点都不能工作。如果重启 IIS 服务不能解决问题,则重启服务器亦不会有效。

Page 50: IIS ( Internet Information Server ,互联网信息服务)

  当站点应用程序不能正常工作时,按照下述步骤重新启动服务器的 IIS 服务:

   1 .在 IIS 管理控制树中展开 IIS节点,选择需要重新启动 IIS 服务的计算机。

   2 .单击【操作】菜单,选择【重新启动 IIS】。

   3 .在【停止 / 启动 / 重新启动】对话框中的【您向要 IIS 做什么】下拉列表中选择【重新启动服务器的 IIS】 ,单击【确定】。

   4 .正在关闭】对话框显示重新启动 IIS 的进度,如果对话框长时间没有反应,单击【现在结束】并重新进行上述操作。

  注意:  对于单个站点的稳定性问题,不必重新启动整个 IIS 进程,只要重启站点即可。

Page 51: IIS ( Internet Information Server ,互联网信息服务)

备份 / 还原 IIS

   IIS 的实现机制包括一个类似注册表的元数据库: MetaBase ,有关 IIS 本身和站点的配置属性全部保存在 Windows 2000 和元数据库MetaBase 中。因此,只要将相关的注册表和元数据库进行备份,即可保存站点相关的全部配置。即使在删除站点甚至重新安装 IIS 之后,仍然能够利用备份恢复到原来的状态。

Page 52: IIS ( Internet Information Server ,互联网信息服务)

备份 IIS 的步骤如下:

   1 .在 IIS 管理器中展开 IIS节点,选择向要备份的计算机。

   2 .单击【操作】菜单,选择【备份 /还原配置】。    3 .在【备份 /还原配置】对话框中的【备份】列表中列出全部备份文件以及备份时间。单击【创建备份】按钮。

   4 .在【备份配置】对话框中指定新建备份的名称,单击【确定】。

   5 .单击【关闭】完成备份。

  默认情况下,备份文件将保存在 Winnt\system32\inetsrv\MetaBack 目录中。

Page 53: IIS ( Internet Information Server ,互联网信息服务)

IIS 内置的备份、还原功能只能在本地服务器中使用,但如果想在网络中移植 IIS网站配置信息到其它服务器,该工具就显得力不从心了。

专门的备份工具 IIS备份精灵 IIS备份精灵只能用在相同版本的 IIS网站间配置信息

的移植 IIS Export Utility 可以对不同版本的 IIS站点配置信息进行移植

Page 54: IIS ( Internet Information Server ,互联网信息服务)

恢复备份的方法与此类似,在【备份 /还原配置】对话框中的【备份】列表中选择一个备份文件,单击【还原】。然后再如左图所示的提示对话框中单击【确定】,一段时间之后, IIS 服务器恢复到进行备份时所处的状态。

Page 55: IIS ( Internet Information Server ,互联网信息服务)

提高 IIS 网站服务器效率

1. 启用 HTTP 的持续作用可以改善 15~20% 的执行效率。   2. 不启用记录可以改善 5~8% 的执行效率。    3. 使用 [独立 ] 的处理程序会损失 20% 的执行效率。    4. 增加快取记忆体的保存文档数量,可提高 ActiveServer Pages 之效能。   5. 勿使用 CGI 程式   6. 增加 IIS 5.0电脑 CPU数量。    7. 勿启用 ASP侦错功能。   8. 静态网页采用 HTTP 压缩,大约可以减少 20% 的传输量。

Page 56: IIS ( Internet Information Server ,互联网信息服务)

1 、启用 HTTP 的持续作用   启用 HTTP 的持续作用( Keep-Alive )时, IIS与浏览器的连线不会断线,可以改善执行效率,直到浏览器关闭时连线才会断线。因为维持「 Keep-Alive」状态时,于每次用户端请求时都不须重新建立一个新的连接,所以将改善服务器的效率。  此功能为 HTTP 1.1预设的功能, HTTP 1.0 加上Keep-Alive header也可以提供 HTTP 的持续作用功能。

Page 57: IIS ( Internet Information Server ,互联网信息服务)

2 、启用 HTTP 的持续作用可以改善 15~20%的执行效率。  如何启用 HTTP 的持续作用呢?步骤如下:

  在 [Internet 服务管理员 ] 中,选取整个 IIS电脑、或 Web 站台, [ 内容 ] 之 [ 主目录 ] 页,勾选 [HTTP 的持续作用 ] 选项。

Page 58: IIS ( Internet Information Server ,互联网信息服务)

3 、不启用记录  不启用记录可以改善 5~8% 的执行效率。  如何设定不启用记录呢?步骤如下:  在 [Internet 服务管理员 ] 中,选取整个 IIS电脑、或 Web 站台,於 [ 内容 ] 之 [ 主目录 ] 页,不勾选 [ 启用记录 ] 选项。  设定非独立的处理程序  使用 [独立 ] 的处理程序会损失 20% 的执行效率,此处所谓「独立」系指将 [ 主目录 ] 、 [ 虚拟目录 ] 页之应用程式保护选项设定为 [ 高(独立的) ] 时。因此 [ 应用程式保护 ] 设定为 [低 (IIS 处理程序 )] 时执行效率较高,设定画面如下:  如何设定非「独立」的处理程序呢?步骤如下:  在 [Internet 服务管理员 ] 中,选取整个 IIS电脑、 Web 站台、或应用程式的起始目录。於 [ 内容 ] 之 [ 主目录 ] 、 [ 虚拟目录 ] 页,设定应用程式保护选项为 [低 (IIS 处理程序 )] 。

Page 59: IIS ( Internet Information Server ,互联网信息服务)

4 、调整快取( Cache )记忆体    IIS 5.0 将静态的网页资料暂存於快取( Cach

e )记忆体当中;调整快取( Cache )记忆体的保存档案数量可以改善执行效率。   ASP指令文档执行过后,会在暂存于快取( Cache )记忆体中以提高执行效能。增加快取记忆体的保存文档数量,可提高 Active Server Pages 之效能。  可以设定所有在整个 IIS电脑、「独立」Web 站台、或「独立」应用程式上执行之应用程式的快取记忆体档案数量。

Page 60: IIS ( Internet Information Server ,互联网信息服务)

如何设定快取( Cache )功能呢?步骤如下:   在 [Internet 服务管理员 ] 中,选取整个 IIS电脑、「独立」Web 站台、或「独立」应用程式的起始目录。於 [ 内容 ] 之 [ 主目录 ] 、 [ 虚拟目录 ] 页,按下 [ 设定 ] 按钮时,即可由 [ 处理程序选项 ] 页设定 [指令档快取记忆体 ] 。  如何设定快取( Cache )记忆体档案数量呢?步骤如下:   在 [Internet 服务管理员 ] 中,选取整个 IIS电脑、或 Web站台的起始目录。於 [ 内容 ] 之 [伺服器扩充程式 ] 页,按下 [ 设定 ] 按钮。  即可设定快取( Cache )记忆体档案数量。

Page 61: IIS ( Internet Information Server ,互联网信息服务)

5 、勿使用 CGI 程式

  使用 CGI 程式时,因为处理程序( Process )须不断地产生与摧毁,造成执行效率不佳。  一般而言,执行效率比较如下:

  静态网页( Static ): 100    ISAPI : 50    ASP : 10    CGI : 1   换句话说, ASP 比 CGI 可能快 10倍,因此勿使用 CGI 程

式可以改善 IIS 的执行效率。   以弹性( Flexibility )而言: ASP > CGI > ISAPI > 静态网

页( Static )。   以安全( Security )而言: ASP (独立) = ISAPI (独

立) = CGI > ASP (非独立) = ISAPI (非独立) = 静态网页( Static )。

Page 62: IIS ( Internet Information Server ,互联网信息服务)

勿启用 ASP 侦错功能

步骤如下: 於 [Internet 服务管理员 ] 中,选取Web 站台、或应用程式的起始目录,按右键选择 [ 内容 ] ,按 [ 主目录 ] 、 [ 虚拟目录 ] 或 [ 目录 ] 页,按下 [ 设定 ] 按钮,选择 [ 应用程式侦错 ] 页,不勾选 [ 启用 ASP伺服器端指令侦错 ] 、 [ 启用 ASP 用户端指令侦错 ] 选项。

Page 63: IIS ( Internet Information Server ,互联网信息服务)

静态网页采用 HTTP 压缩

  静态网页采用 HTTP 压缩,大约可以减少 20% 的传输量。   用户端使用 IE 5.0 浏览器连线到已经启用 HTTP压缩 IIS 5.0 之 Web 服务器,才有 HTTP压缩功能。 步骤如下:  若要启用 HTTP压缩功能,方法为在 [Internet 服务管理器 ] 中,选取电脑之 [ 内容 ] ,於 [ 主要内容 ] 之下选取 [WWW 服务 ] 。然後按一下 [编辑 ] 按钮,於 [ 服务 ] 页上,选取 [压缩静态档案 ] 可以压缩静态档案,不选取 [压缩应用程式档案 ] 。

  动态产生的内容档案(压缩应用程式档案)也可以压缩,但是须耗费额外 CPU 处理时间,若% Processor Time 已经百分之八十或更多时,建议不要压缩。