WindowsIIS6安全保護貼—URL授權全攻略

字號:

Windows操作系統(tǒng)的IIS是大家最常用的Web服務器之一。IIS功能強大、簡單易用,但也容易受到惡意攻擊,它的安全性一直是大家談論的焦點,為了增強Web服務器的安全性,在Windows Server 2003操作系統(tǒng)的IIS6中增加了很多安全防范功能,“URL授權”就是其中之一。該功能可以使得IIS6更加安全穩(wěn)定地工作,本文就向大家介紹一下有關URL授權的相關的知識。
    一、為什么使用URL授權
    IIS網站為用戶工作提供便利,但它的安全性一直是管理員最關心的話題。眾所周知,IIS服務器組件存在一些漏洞,很多“不法之徒”利用這些漏洞對網站進行攻擊。雖然及時安裝IIS補丁可以修復這些漏洞,但新的漏洞又會不斷出現(xiàn)。很多管理員采用取消匿名訪問權限方式來控制訪問網站的用戶范圍,但此方式還是存在一定的安全隱患。為了增強IIS的安全性,在Windows Server 2003系統(tǒng)中提供URL授權功能,它可以通過授權管理器對瀏覽網站的用戶進行嚴格的控制。如要想讓某個用戶賬戶能訪問啟用了URL授權功能的虛擬目錄,首先這個用戶賬號必須是Windows Server 2003系統(tǒng)合法的賬號。此外,還要將該賬號添加到授權管理器的角色分配項中。
    二、配置URL授權功能
    IIS6默認情況下并沒有啟用URL授權功能,必須結合授權管理器進行手工配置才能實現(xiàn)。下面筆者將一步步介紹如何實現(xiàn)。
    1.禁用匿名訪問
    在Windows Server 2003系統(tǒng)中,IIS6默認是允許用戶匿名訪問的,要想使用URL授權功能,首先必須禁用匿名訪問。點擊“開始→運行”,在運行對話框中輸入“%systemroot% \System32\InetSrv\IIS.msc”命令(其中“%systemroot%”表示操作系統(tǒng)所在目錄)?;剀嚭髲棾觥癐nternet信息服務(IIS)管理器”窗口,然后依次展開“本地計算機→網站→默認網站”。下面筆者以默認網站的Online虛擬目錄為例,介紹如何配置URL授權功能。
    右鍵點擊“Online文件夾”選項,在彈出的菜單中選擇“屬性”,在彈出的Online屬性對話框中,切換到“虛擬目錄”標簽頁,點擊“創(chuàng)建”按鈕。在“目錄安全性”標簽頁的身份驗證和訪問控制欄中點擊“編輯”按鈕,在彈出的身份驗證方法對話框中,取消“啟用匿名訪問”前的鉤選,確?!凹蒞indows身份驗證”選項被選中(如圖1),然后兩次點擊“確定”按鈕。
    2.配置通配符應用程序映射
    禁用了匿名訪問功能后,我們就正式開始進行配置。首先要為URL授權功能配置通配符應用程序映射。在Online屬性對話框的虛擬目錄標簽頁中,點擊“配置”按鈕,彈出“應用程序”對話框,點擊“通配符應用程序映射”欄中的“插入”按鈕(如圖2),在“添加/編輯應用程序擴展名映射”對話框中點擊“瀏覽”按鈕,進入到“%systemroot% \System32\InetSrv”目錄,找到urlauth.dll文件后,點擊“打開”按鈕,最后點擊“確定”按鈕。
    3.添加WEB服務擴展
    接著我們要在IIS6中為URL授權添加一個Web服務擴展。在Internet信息服務(IIS)管理器窗口中,依次展開“本地計算機→網站→Web服務擴展”,在右側的WEB服務擴展框體中點擊“添加一個新的WEB服務擴展”鏈接,彈出新建WEB服務擴展對話框(如圖3)。在“擴展名”欄中輸入“URL授權”,然后點擊“添加”按鈕,在添加對話框中點擊“瀏覽”,找到“%systemroot%\System32\ InetSrv”目錄下的urlauth.dll文件,打開后點擊“確定”按鈕。接著在新建WEB服務擴展對話框中選中“設置擴展狀態(tài)為允許”選項,最后點擊“確定”按鈕。
    4.新建授權存儲
    要想啟用URL授權功能,必須和授權管理器配合使用,授權管理器是用來管理訪問IIS網站的用戶賬號的,因此,對它要進行管理配置。首先要為它創(chuàng)建一個存儲授權信息的文件。在運行對話框中輸入“Azman.msc”命令,回車后彈出授權管理器窗口,右鍵點擊“授權管理器”選項,在彈出菜單中選擇“選項”,接著在選項對話框中選中“開發(fā)人員模式”后,點擊“確定”按鈕。接下來我們新建一個授權存儲文件,右鍵點擊“授權管理器”選項,選擇“新建授權存儲”選項,彈出授權存儲對話框(如圖4),選中“XML文件”單選項,在“存儲名稱”欄中輸入“C:\MyStore.xml”后,點擊“確定”按鈕。
    接著在授權管理器窗口中,右鍵點擊MyStore.xml項。在彈出的菜單中選擇“新建應用程序”,在名稱欄中輸入“IIS6 URL授權”后,點擊“確定”按鈕。然后在授權管理器窗口中,依次展開“IIS6 URL授權→定義”,右鍵點擊“操作定義”,在彈出的菜單中選擇“新建操作定義”。然后在“名稱”欄中輸入“AccessURL”,在操作號碼欄中輸入“1”,最后點擊“確定”按鈕
    5.配置作用域
    接著要為新建的應用程序IIS6 URL授權配置作用域。右鍵點擊“IIS6 URL授權”選項,在彈出菜單中選擇“新建作用域”,在名稱欄中輸入“WebApp”后,點擊“確定”按鈕。接著依次展開“IIS6 URL授權→定義”,右鍵點擊“角色定義”選項,在彈出菜單中選擇“新建角色定義”。下面在角色定義中創(chuàng)建作用域,在名稱欄中輸入“VIEwer”后,點擊“確定”按鈕。然后點擊“角色定義”選項,在右側框體中右鍵點擊Viewer選項,彈出快捷菜單,選擇“屬性”選項,切換到“定義”標簽頁,點擊“添加”按鈕后,切換到“操作”標簽頁,在操作定義列表框中選中“AccessURL”選項后,連續(xù)兩次點擊“確定”按鈕。
    然后依次展開“IIS6 URL授權→ WebApp”,右鍵點擊“角色分配”選項,在彈出的菜單中選中“分配角色”。在添加角色對話框中選中“Viewer”選項后,點擊“確定”按鈕。接著在右側框體中右鍵點擊“Viewer”選項,選擇“分配Windows用戶和組”選項,彈出選擇用戶或組對話框(如圖5),在“輸入對象名稱來選擇”欄中輸入訪問網站頁面需要的用戶賬號,然后點擊“確定”按鈕。
    6.配置讀取器角色
    默認情況下,IIS6是以Network Service賬號身份運行的。下面就對讀取器使用的賬號進行配置。右鍵單擊“MyStore.xml”項,在彈出的菜單中選擇“屬性”,切換到“安全”標簽頁,在“授權管理器用戶角色”下來列表中選中“讀取器”,接著點擊“添加”按鈕,在“輸入對象名稱來選擇”欄中輸入“Network Service”賬號,接著兩次點擊“確定”按鈕。
    7.配置IIS Metabase文件
    完成了以上配置過程后,URL授權功能依然還沒啟用,還需要修改IIS Metabase文件參數才行。下面我們就使用vbs腳本對IIS Metabase文件進行修改。進入到“C:\ Inetpub\AdminScripts”目錄下,新建一個名為“SetUrlAuth.vbs”的腳本文件。打開此文件后,將以下內容復制到腳本文件中,最后要保存文件。
    腳本內容如下:
    'SetUrlAuth.vbs 內容
    Set objArgs= WScript.Arguments
    If objArgs.count < 4 then
    wscript.echo "Usage: SetUrlAuth VDirPath AzScopeName AzStoreName AzEnable
    [ImpersonationLevel]"
    wscript.echo ""
    wscript.echo "Example:"
    wscript.echo " SetUrlAuth w3svc/1/root/MyApp MyApp
    msxml://d:\inetpub\wwwroot\AzStore.xml True 1"
    wscript.echo ""
    wscript.echo "Run with 'cscript' command in cmd.exe to avoid msgboxes"
    Else
    wscript.echo objargs(0)
    DIM iis
    set iis = GetObject("IIS://localhost/" & objArgs(0))
    iis.AzScopeName = objArgs(1)
    iis.AzStoreName = objArgs(2)
    iis.AzEnable = objArgs(3)
    If objArgs.count > 4 then
    iis.AzImpersonationLevel = objArgs(4)
    End if
    iis.SetInfo
    End if
    接著點擊“開始→運行”,在運行對話框中輸入“Cmd.exe”命令,彈出命令提示符窗口。切換到“C:\ Inetpub\AdminScripts”目錄下,運行“Cscript SetUrlAuth.vbs W3svc\1\Root\WebApp WebApp msxml://C:\MyStore.xml true 1”命令,完成Metabase文件參數修改。
    這樣就啟用了URL授權功能。只有在授權管理器的Viewer角色中指定的用戶賬號,才能訪問你網站Online虛擬目錄的頁面。