本文將逐步告訴您,如何安裝及設定 Microsoft Internet Information Services
(IIS) 的 URLScan 公用程式。您可以使用本文的步驟從 Microsoft 網站下載 URLScan。在安裝 URLScan 之後,您的 Web
伺服器將更安全。
下載並安裝 URLScan
若要安裝新的軟體並且可以停止或重新啟動 Web 服務,您必須登入您的 Web 伺服器。因此,若要安裝 URLScan
公用程式,請以系統管理員身份登入您的 Web 伺服器,然後遵循下列步驟:
- 下載 URLScan 公用程式。若要執行這項操作,請至下列 Microsoft 網站:
- 按一下 [Download Now]。
- 按一下 [將程式存到磁碟],然後按一下 [確定]。
- 選擇 [桌面] 做為儲存檔案的位置,然後按一下 [儲存]。
- 結束您的瀏覽器。
- 按兩下 Urlscan.exe 檔案。
- 閱讀使用者授權合約 (EULA)。如果您接受 EULA 的條款,請按一下 [是]。
- 如果提示您重新啟動 IIS,請按一下 [是]。
- 如果收到告訴您已經完成安裝的訊息,請按一下 [確定]。
修改預設的 URLScan 組態檔
因為 URLScan 的預設組態可能會干擾 FrontPage 的功能,因此您必須做些變更,讓 FrontPage
可以正確地運作,並且拒絕存取機密性的 FrontPage 檔案。這些步驟只是建議。如需有關 URLScan 設定的詳細資訊,請參閱本文稍後〈
參考〉一節。
- 以滑鼠右鍵按一下 [開始],然後按一下 [檔案總管]。找出下列資料夾:
%windir%\system32\inetsrv\urlscan
其中 %windir% 是您的 Windows 資料夾
(例如,C:\Windows 或 C:\Winnt)。 - 以滑鼠右鍵按一下 Urlscan.ini 檔案,然後再按 [複製]。用滑鼠右鍵按一下資料夾,然後按一下 [貼上]。就會建立一個命名為 Copy of Urlscan.ini 的檔案複本。
- 按兩下 Urlscan.ini 檔案。此時會以「記事本」開啟檔案。
- 請進行下列變更:
- 在 [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
- 在 [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)
- 在 [DenyHeaders] 區段中,請只使用下列各值。
[DenyHeaders]
If: ; deny (used with WebDAV)
Lock-Token: ; deny (used with WebDAV)
- 在 [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
- 在 [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
- 由於這些設定並未使用 [DenyVerbs] 及 [AllowExtensions]
區段,因此本文內容並未包含這些區段的設定。
如需有關組態檔中這些區段的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
307608?
(http://support.microsoft.com/kb/307608/EN-US/
)
INFO:URLScan 安全性工具的可用情形
- 儲存檔案並離開「記事本」。
變更 URLScan 的優先順序 (選擇性)
在 IIS 中 URLScan 公用程式的預設優先順序為高。高優先順序可能會干擾到在呼叫 URLScan 之前需要執行工作的其他
Internet Server Application Programming Interface (ISAPI) 篩選器。FrontPage Server
Extensions (Fpexedll.dll) ISAPI 篩選器就是這種篩選器。雖然本節的資訊說明如何設定 URLScan,使其在
Fpexedll.dll ISAPI 篩選器之後載入,但您可以輕易地套用這個程序來設定 URLScan 搭配其他 ISAPI
篩選器使用。如需詳細資訊,請參閱您所用的 ISAPI 篩選器的文件。
注意:在完成下列程序之前,您必須正確設定 Urlscan.ini 檔案中的 AllowLateScanning=1,以載入
URLScan 成為低優先順序的篩選器。如果要執行這項操作,請遵循本文前面〈
修改預設的
URLScan 組態檔〉一節中的程序。
- 啟動 [Internet 服務管理員]。若要執行這項操作,請遵循適用於您的 IIS 版本的步驟:
- 在 IIS 4.0 中:
- 在 Windows [開始] 功能表上,指向 [程式集],然後按一下 [Windows NT 4.0 Option Pack]。
- 按一下 [Microsoft Internet Information Server]。
- 選取 [Internet 服務管理員]。
- 在 IIS 5.0 中:
- 在 Windows [開始] 功能表上,指向 [程式集],然後按一下 [系統管理工具]。
- 選取 [Internet 服務管理員]。
- 在 IIS 5.1 中:
- 在 Windows [開始] 功能表上,指向 [控制台]。
- 按兩下 [系統管理工具]。
- 按兩下 [Internet Information Services]。
- 以滑鼠右鍵按一下 [我的電腦],再按 [內容]。
- 選取 [WWW 服務主要內容] 選項,然後按一下 [編輯] 按鈕。
- 按一下 [ISAPI 篩選器] 索引標籤。
- 按一下 [UrlScan],然後再按 [向下] 按鈕將 UrlScan 移到 Fpexedll.dll 下方。
- 按一下 [確定]。
- 再按一下 [確定]。
重新啟動 IIS 以更新 URLScan
當 IIS 啟動時,會將 URLScan 載入記憶體中並讀取 Urlscan.ini 檔案中的設定。因此,您必須重新啟動
IIS,才能使新的組態設定生效。若要執行這項操作,請遵循適用於您的 IIS 版本的步驟:
- 在 IIS 4.0 中:
- 在命令提示字元下,輸入下列命令:
NET STOP "IIS Admin Service" /Y
- 如果您看到數個相關的服務列示為停止,請記下其名稱,您稍後可以重新啟動這些服務。
- 當您看到以下訊息
已經成功停止「IIS 管理服務」。
請依名稱重新啟動每項 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"
- 結束命令提示字元。
- 在 IIS 5.0 中:
- 用滑鼠右鍵按一下您的伺服器名稱,然後按一下 [重新啟動 IIS]。
- 按一下
[在您的電腦上重新啟動網際網路服務]。
- 按一下 [確定]。
- 在 IIS 5.1 中:
- 以滑鼠右鍵按一下 [我的電腦],指向 [全部工作],接著按一下 [重新啟動 IIS]。
- 按一下
[在您的電腦上重新啟動網際網路服務]。
- 按一下 [確定]。
如需關於重新啟動 IIS 服務的詳細資訊,請按一下以下的文件編號,檢視「Microsoft
知識庫」中的對應文件:
185382?
(http://support.microsoft.com/kb/185382/ZH-TW/
)
如何手動停止或啟動 Inetinfo 程序
236166?
(http://support.microsoft.com/kb/236166/ZH-TW/
)
Using NET STOP and NET START Commands to Force IIS Services to Re-Read the Registry
202013?
(http://support.microsoft.com/kb/202013/ZH-TW/
)
Internet Information Services 5.0 Command-Line Syntax for Iisreset.exe
疑難排解
- 本文前面〈修改預設的 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/ZH-TW/
)
INFO:URLScan 安全性工具的可用情形
307976?
(http://support.microsoft.com/kb/307976/ZH-TW/
)
FP:Error Message When You Use FrontPage with URLScan
309508?
(http://support.microsoft.com/kb/309508/ZH-TW/
)
XCCC:IIS Lockdown and URLscan Configurations in an Exchange Environment