DetailPage-MSS-KB

知识库

文章编号: 309394 - 最后修改: 2006年1月16日 - 修订: 6.0

本页

概要

本文分步介绍如何安装和配置用于 Microsoft Internet 信息服务 (IIS) 的 URLScan 实用工具。您可按本文中的步骤从 Microsoft 网站下载 URLScan。安装 URLScan 后,您的 Web 服务器将更加安全。

下载和安装 URLScan

要安装新软件且能够停止或重新启动 Web 服务,您必须登录到您的 Web 服务器。因此,要安装 URLScan 实用程序,需要以管理员身份登录 Web 服务器。要获得 URLScan 实用程序,请访问下面的 Microsoft 网站:
http://www.microsoft.com/downloads/details.aspx?familyid=23d18937-dd7e-4613-9928-7f94ef1c902a (http://www.microsoft.com/downloads/details.aspx?familyid=23d18937-dd7e-4613-9928-7f94ef1c902a)

修改默认的 URLScan 配置文件

由于 URLScan 的默认配置可能会干扰 FrontPage 的功能,您需要进行一些更改,以便能够在拒绝对某些敏感 FrontPage 文件进行访问的同时使 FrontPage 仍能正常工作。这些步骤仅供参考。有关 URLScan 设置的其他信息,请参阅本文后面的“参考”一节。
  1. 右键单击开始,然后单击资源管理器。找到以下文件夹:
    %windir%\system32\inetsrv\urlscan
    其中 %windir% 是 Windows 文件夹(例如 C:\Windows 或 C:\Winnt)。
  2. 右键单击 Urlscan.ini 文件,然后单击复制。在该文件夹中右键单击,然后单击“粘贴”。这就创建了名为复件 Urlscan.ini 的文件副本。
  3. 双击 Urlscan.ini 文件。该文件在“记事本”中打开。
  4. 进行下列更改:
    1. 在 [options] 部分,设置下列值:
      [options]
      UseAllowVerbs=1          ; use the [AllowVerbs] section
      UseAllowExtensions=0     ; use the [DenyExtensions] section
      NormalizeUrlBeforeScan=1 ; canonicalize URL before processing
      VerifyNormalization=1    ; canonicalize URL twice, reject on change
      AllowHighBitCharacters=0 ; deny high bit (UTF8 or MBCS) characters 
      AllowDotInPath=0         ; deny dots in path
      EnableLogging=1          ; log activity
      PerDayLogging=1          ; change log files daily
      PerProcessLogging=0      ; do not change log files by process ID
      RemoveServerHeader=0     ; do not remove "Server" header
      AlternateServerName=
      UseFastPathReject=0      ; use RejectResponseUrl or log the request
      RejectResponseUrl=
      AllowLateScanning=1      ; allow URLScan to be loaded low priority
      						
    2. 在 [AllowVerbs] 部分,仅使用下列值。不要包括其他值。
      [AllowVerbs]
      GET     ; allow GET (most Web requests)
      HEAD    ; allow HEAD requests
      OPTIONS ; allow OPTIONS (Web Folders need this)
      POST    ; allow POST (FrontPage Server Extensions and HTML forms need this)
      						
    3. 在 [DenyHeaders] 部分,仅使用下列值。不要包括其他值。
      [DenyHeaders]
      If:; deny (used with WebDAV)
      Lock-Token:; deny (used with WebDAV)
      						
    4. 在 [DenyExtensions] 部分,设置下列值:
      [DenyExtensions]
      .asa     ; deny active server application definition files
      .bat     ; deny batch files
      .btr     ; deny FrontPage dependency files
      .cer     ; deny x509 certificate files
      .cdx     ; deny dynamic channel definition files
      .cmd     ; deny batch files
      .cnf     ; deny FrontPage metadata files
      .com     ; deny server command-line applications
      .dat     ; deny data files
      .evt     ; deny Event Viewer logs
      .exe     ; deny server command-line applications
      .htr     ; deny IIS legacy HTML admin tool
      .htw     ; deny Index Server hit-highlighting
      .ida     ; deny Index Server legacy HTML admin tool
      .idc     ; deny IIS legacy database query files
      .inc     ; deny include files
      .ini     ; deny configuration files
      .ldb     ; deny Microsoft Access Record-Locking Information files
      .log     ; deny log files
      .pol     ; deny policy files
      .printer ; deny Internet Printing Services
      .sav     ; deny backup registry files
      .shtm    ; deny IIS Server Side Includes
      .shtml   ; deny IIS Server Side Includes
      .stm     ; deny IIS Server Side Includes
      .tmp     ; deny temporary files
      						
    5. 在 [DenyUrlSequences] 部分,设置下列值:
      [DenyUrlSequences]
      ..         ; deny directory traversals
      ./         ; deny trailing dot on a directory name
      \          ; deny backslashes in URL
      :          ; deny alternate stream access
      %          ; deny escaping after normalization
      &          ; deny multiple CGI processes to run on a single request
      /fpdb/     ; deny browse access to FrontPage database files
      /_private  ; deny FrontPage private files (often form results)
      /_vti_pvt  ; deny FrontPage Web configuration files
      /_vti_cnf  ; deny FrontPage metadata files
      /_vti_txt  ; deny FrontPage text catalogs and indices
      /_vti_log  ; deny FrontPage authoring log files
      						
    6. 因为这些设置不使用 [DenyVerbs] 和 [AllowExtensions] 部分,所以本文中不包含这两部分的设置。 有关配置文件中这些部分的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
      307608  (http://support.microsoft.com/kb/307608/ ) 对 IIS 使用 URLScan
  5. 保存文件,并退出“记事本”。

更改 URLScan 优先级(可选)

在 IIS 中,URLScan 实用工具的默认优先级为高。高优先级可能会干扰其他 Internet 服务器应用程序编程接口 (ISAPI) 筛选器,这些筛选器需要在调用 URLScan 前执行任务。FrontPage Server Extensions (Fpexedll.dll) ISAPI 筛选器就是这样一个筛选器。虽然本节的信息仅解释如何配置 URLScan 使其在 Fpexedll.dll ISAPI 筛选器之后加载,但您可以很容易地针对其他情况修改这一过程,从而配置 URLScan 使其在其他 ISAPI 筛选器之后加载。有关更多信息,请参阅所使用的 ISAPI 筛选器的文档。

注意:完成下面的过程前,需要在 Urlscan.ini 文件中正确设置 AllowLateScanning=1,以便将 URLScan 作为低优先级的筛选器加载。为此,请按照上文“修改默认的 URLScan 配置文件”一节中的步骤执行操作。
  1. 启动 Internet 服务管理器。为此,请根据您的 IIS 版本执行下面的相应步骤:
    • 在 IIS 4.0 中:
      1. 在 Windows 开始菜单中,指向程序,然后单击“Windows NT 4.0 Option Pack”。
      2. 单击 Microsoft Internet Information Server
      3. 选择 Internet 服务管理器
    • 在 IIS 5.0 中:
      1. 在 Windows 开始菜单中,指向程序,然后单击管理工具
      2. 选择 Internet 服务管理器
    • 在 IIS 5.1 中:
      1. 在 Windows 开始菜单上,单击控制面板
      2. 双击管理工具
      3. 双击 Internet 信息服务
  2. 右键单击我的电脑,然后单击属性
  3. 选择 WWW 服务主属性选项,然后单击编辑按钮。
  4. 单击 ISAPI 筛选器选项卡。
  5. 单击 UrlScan,然后单击向下按钮将 UrlScan 移到 Fpexedll.dll 下面。
  6. 单击确定
  7. 再次单击确定

重新启动 IIS 以更新 URLScan

当 IIS 启动时,URLScan 将被加载到内存中,并读取 Urlscan.ini 文件中的设置。因此,您需要重新启动 IIS 以使新配置设置生效。为此,请根据您的 IIS 版本执行下面的相应步骤:
  • 在 IIS 4.0 中:
    1. 在命令提示符下,键入以下命令:
      NET STOP "IIS Admin Service" /Y
    2. 如果看到多个从属服务被列为已停止服务,请记下它们的名称以便稍后重新启动这些服务。
    3. 当看到以下消息时,
      IIS Admin Service 服务已成功停止。
      请按名称重新启动每个 IIS 服务。为此,请在命令提示符下键入下列命令,在每行后按 Enter:
      NET START "World Wide Web Publishing Service"
      NET START "Simple Mail Transport Protocol (SMTP)"
      NET START "FTP Publishing Service"
      NET START "IIS Host Helper Service"
    4. 退出命令提示符。
  • 在 IIS 5.0 中:
    1. 右键单击服务器名称,然后单击重新启动 IIS
    2. 单击“重新启动 Your Computer 的 Internet 服务”。
    3. 单击确定
  • 在 IIS 5.1 中:
    1. 右键单击我的电脑,指向所有任务,然后单击重新启动 IIS
    2. 单击“重新启动 Your Computer 的 Internet 服务”。
    3. 单击确定
有关重新启动 IIS 服务的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
185382  (http://support.microsoft.com/kb/185382/ ) 如何手动停止或启动 Inetinfo 进程
236166  (http://support.microsoft.com/kb/236166/ ) 使用 NET STOP 和 NET START 命令强制 IIS 服务重新读取注册表
202013  (http://support.microsoft.com/kb/202013/ ) Iisreset.exe 的 Internet 信息服务 5.0 命令行语法

疑难解答

  • 在本文前面的“修改默认的 URLScan 配置文件”一节中列出的设置指定在 Urlscan.ini 文件的 [Options] 部分中设置 EnableLogging=1。这使 URLScan 能随时记录所有的 URLScan 活动。该日志文件与 Urlscan.dll 文件保存在同一文件夹下。如果在启用 URLScan 时遇到任何与 FrontPage 或其他 IIS 功能有关的问题,可查看该日志文件中的最新条目,以了解被拒请求的信息。
  • 如果要进一步更改 Urlscan.ini 文件,请创建现有 Urlscan.ini 文件的副本,将其分别命名为 Urlscan.001、Urlscan.002 等等,这样就保留了所做的更改的历史记录。这样,在您尝试实施新的安全配置时,就能避免丢失以前的正确配置。
  • 如果对 URLScan 所做的更改未生效,则再次执行该过程以重新启动 IIS 服务。如果更改仍未生效,则重新启动 Web 服务器。



参考

有关安装和配置 URLScan 实用工具的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
307608  (http://support.microsoft.com/kb/307608/ ) 对 IIS 使用 URLScan
307976  (http://support.microsoft.com/kb/307976/ ) 安装 URLScan 后,使用 FrontPage 时收到错误消息
309508  (http://support.microsoft.com/kb/309508/ ) Exchange 环境中的 IIS 锁定和 URLscan 配置

这篇文章中的信息适用于:
  • Microsoft FrontPage 2000 服务器扩展
  • Microsoft SharePoint Team Services
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Internet Information Services 5.1
关键字: 
kbhowtomaster kbdownload kbwebserver kbsetup kbconfig kbwebservices KB309394
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。
其他支持选项
Microsoft Community 支持论坛
直接联系我们
查找 Microsoft 认证合作伙伴
Microsoft 商店
关注我们: