MSDN 首頁 

How To:使用 IISLockdown.exe

發佈日期: 2004 年 5 月 28 日
本頁內容
目標目標
適用於適用於
如何使用本單元如何使用本單元
摘要摘要
IISLockdown 的作用何在?IISLockdown 的作用何在?
安裝 IISLockdown安裝 IISLockdown
執行 IISLockdown執行 IISLockdown
記錄檔記錄檔
復原 IISLockdown 變更復原 IISLockdown 變更
自主式 (Unattended) 執行自主式 (Unattended) 執行
潛在風險潛在風險

目標

透過本單元即可:

使用 IISLockdown 來保障執行 ASP.NET 之 IIS Web 伺服器的安全。

回到頁首回到頁首

適用於

本單元適用於下列產品及技術:

Microsoft® Windows® 2000 Server

Internet Information Services

回到頁首回到頁首

如何使用本單元

若要充分瞭解本單元:

您必須具備管理 Internet Information Services 的相關經驗。

您必須在 IIS Web 伺服器上安裝 .NET Framework。

閱讀相關單元<How To:使用 URLScan>。本單元說明如何使用會與 IISLockdown 一併安裝的 URLScan ISAPI 篩選器。

回到頁首回到頁首

摘要

利用執行 IISLockdown 工具,您可以大幅自動化保障 Web 伺服器的安全防護程序。此工具可讓您選取特定的伺服器角色類型,然後使用會停用或保護各種功能的自訂範本,來提高該伺服器的安全性。

本單元說明如何使用 IISLockdown 工具,來保障提供 ASP.NET 網頁的 Internet Information Services (IIS) 伺服器。

回到頁首回到頁首

IISLockdown 的作用何在?

執行 IISLockdown 時,提供 ASP.NET 網頁的 Windows 2000 電腦會選取 [Dynamic Web server (有啟用 ASP)] 範本。當您使用此範本時,IIS Lockdown 便會執行下列動作:

它會停用下列 Internet 服務:

檔案傳輸通訊協定 (FTP)

電子郵件服務 (SMTP)

新聞服務 (NNTP)

它會將下列指令碼對應到 404.dll:

Index Server Web 介面 (.idq、.htw、.ida)

伺服器端的包含檔 (.shtml、.shtm、.stm)

網際網路資料連接器 (.idc)

.HTR 指令碼 (.htr)

網際網路列印 (.printer)

它會移除下列虛擬目錄:

IIS Samples

MSADC

IISHelp

Scripts

IISAdmin

它會限制系統公用程式的匿名存取,以及寫入 Web 內容目錄的能力。為了這麼做,IISLockdown 會建立名為「Web 匿名使用者」與「Web 應用程式」的兩個新本機群組,然後將這些群組的拒絕存取控制項目 (ACE) 新增到重要公用程式及目錄上的存取控制清單 (ACL) 中。

接著,IISLockdown 會將預設的匿名網際網路使用者帳戶 (IUSR_MACHINE) 新增到「Web 匿名使用者」,將 IWAM_MACHINE 帳戶新增到「Web 應用程式」中。

注意 如果您建立自訂的匿名網際網路使用者帳戶,請將這些帳戶新增到「Web 匿名使用者」群組中。

它會停用 Web Distributed Authoring and Versioning (WebDAV)。

它會安裝 URLScan ISAPI 篩選器。

回到頁首回到頁首

安裝 IISLockdown

若要安裝 IISLockdown,請從 Microsoft 網站下載,網址是:http://download.microsoft.com/download/iis50/Utility/2.1/NT45XP/EN-US/iislockd.exe

您可以將其儲存到本機,或在出現提示時,按一下 [開啟] 即可直接執行。如果您儲存 IISLockd.exe,您可以執行下列命令來解壓縮有用的檔案:

iislockd.exe /q /c

這個命令會解壓縮下列檔案:

IISLockd.chm。這是 IISLockdown 工具的已編譯說明檔。

RunLockdUnattended.doc。此檔案包含 IISLockdown 自主式 (Unattended) 執行的指示。

URLScan.exe 及關聯的檔案。這些檔案會安裝 URLScan 而不執行 IISLockdown.exe。

回到頁首回到頁首

執行 IISLockdown

IISLockdown 會偵測 Microsoft .NET Framework,並採取步驟來保障 .NET Framework 檔案的安全。執行 IISLockdown 之前,請先在 Web 伺服器上安裝 .NET Framework。

IISLockd.exe 並非安裝程式。當您啟動 IISLockd.exe 時,它會執行 IIS 鎖定精靈 (IIS Lockdown Wizard)。

若要執行 IISLockdown

1.

在 IIS Web 伺服器上執行 IISlockd.exe,按一下 [下一步],然後閱讀並接受授權合約。

2.

針對裝載 ASP.NET Web 應用程式的 Web 伺服器,選取 [伺服器範本] 清單中的 [Dynamic Web server (ASP enabled)]。

3.

選取 [檢視範本設定],然後按一下 [下一步]。
此處可讓您指定 IIS Lockdown 工具應執行的變更。

4.

選取 [Web 服務 (HTTP)],確認並未選取其他服務。

5.

選取 [移除取消選取的服務],按一下 [是 ] 以回應警告訊息方塊,然後按一下 [下一步]。

6.

在 [指令碼對應] 頁上,停用下列指令碼對應的支援,然後按一下 [下一步]。

Index Server Web 介面 (.idq、.htw、.ida)

伺服器端的包含檔 (.shtml、.shtm、.stm)

網際網路資料連接器 (.idc)

.HTR 指令碼 (.htr)

網際網路列印 (.printer)

7.

在 [其他安全性] 頁上,選取所有可用的選項。
此舉會讓 IISLockdown 移除所有列出的虛擬目錄、設定匿名網際網路帳戶的 NTFS 權限、以及停用 WebDAV。

8.

按 [下一步]。

9.

在 [URLScan] 頁上,選取 [在伺服器上安裝 URLScan]。

10.

按兩次 [下一步]。
IISLockdown 會使用已選取的選項來更新您的伺服器設定。

11.

按一下 [下一步],然後再按 [完成] 結束工具。

回到頁首回到頁首

記錄檔

詳細記載 IISLockdown 所做之變更的記錄,會寫入下列位置的檔案中:\WINNT\System32\inetsrv\oblt-log.log。當您第二次執行 IISLockdown 時,IISLockdown 會根據此記錄檔來復原其所有變更。您可以使用任何文字編輯器來檢視這個記錄檔,以瞭解 IISLockdown 所做的確切變更。

回到頁首回到頁首

復原 IISLockdown 變更

若要復原 IISLockdown 所做的變更,請再次執行 IISlockd.exe,並選擇要復原這些變更。此復原作業將還原您上次執行 IISLockdown 前所使用的系統設定。這些詳細資訊均記錄在記錄檔 \WINNT\System32\inetsrv\0blt-log 中。因此,執行 IISLockdown 之後,請務必立即測試系統。如需進行復原,請立即執行。

注意:會與 IIS Lockdown 一併安裝的 URLScan ISAPI 篩選器,不會在復原過程中移除。您可以在 [Internet 服務管理員] 的伺服器層級,使用 [ISAPI 篩選器] 索引標籤來手動移除 URLScan。

回到頁首回到頁首

自主式 (Unattended) 執行

下列步驟源自 RunLockdUnattended.doc,當您使用 /q 和 /c 引數執行 IISLockd.exe 來解壓縮檔案時,便會產生此文件。

若要設定 IISLockdown 進行自主式 (Unattended) 執行

1.

在文字編輯器中開啟 IISlockd.ini。

2.

在 [Info] 區段下,輸入您要使用之伺服器範本的名稱,藉此設定 UnattendedServerType 設定值。例如,如果您要套用 dynamicweb 範本,那麼設定內容如下:

UnattendedServerType=dynamicweb 

3.

Unattended 設定變更為 TRUE,如下所示:

Unattended=TRUE 

注意:如果您要以自主式的方式執行 IISlockd.exe 來復原之前的變更,請確認 Unattended Undo 設定均已設為 TRUE

4.

設定您在步驟 2 選擇的伺服器範本。範本的設定會以方括號括住伺服器範本名稱來表示,例如 [dynamicweb]。範本設定中包含該特定伺服器範本的各種功能設定。藉由將它們設定為 TRUE FALSE,即可將這些功能設定切換成開啟或關閉。

注意:在自主式安裝過程中會忽略 AdvancedSetup 設定,而 UninstallServices 設定僅適用於 Windows 2000。

5.

儲存 IISlockd.ini。

6.

使用命令列或指令碼來執行 IISlockd.exe。

回到頁首回到頁首

潛在風險

使用 IISLockdown 時,請留意下列潛在風險:

IISLockdown 會使用「Web 匿名使用者」這個新群組來設定 NTFS 權限。在預設的狀況下,此群組包含 IUSR_MACHINE 帳戶。如果您建立新的匿名帳戶,就必須手動將這些帳戶新增到「Web 匿名使用者」群組。

如果您使用 Microsoft Visual Studio® .NET, 來偵錯 ASP.NET 頁,偵錯作業會停止運作。這是因為 IISLockdown 安裝了 URLScan,而 URLScan 會封鎖 DEBUG 動詞。有關如何在開發人員工作站上使用 IISLockdown 的詳細資訊,請參閱本指南的<How To:保障開發人員工作站的安全>。


回到頁首回到頁首