asp网站文件夹权限设置
以win2003操作系統(tǒng),硬盤采用NTFS文件系統(tǒng)。網(wǎng)站的權(quán)限設(shè)置包含兩部分:主要是網(wǎng)站文件夾與文件的訪問權(quán)限,其次是IIS中的internet 匿名用戶的訪問權(quán)限。
一、網(wǎng)站文件夾與文件訪問權(quán)限的設(shè)置
假設(shè)ASP網(wǎng)站在以下文件夾中:web 、bbs,我們稱其為網(wǎng)站根文件夾。
1、相同的設(shè)置
(1)本地用戶一般都要對站點內(nèi)的文件夾和文件進行維護,所以所有的文件夾和文件必須給予本地超級用戶完全控制的權(quán)限(不要忘記給超級用戶設(shè)置強大 的密碼)。
(2)我們知道網(wǎng)站中大部分文件都是asp程序,這些文件必須具有“讀取和運行”的權(quán)限。所以要給web、bbs根文件夾添加internet來賓 用戶,設(shè)置讀取和運行的權(quán)限,并讓它們底下的所有子文件夾和文件繼承到這個權(quán)限。(請注意:先不要取消子文件夾的繼承權(quán)——特殊的畢竟是“少數(shù)分子”,我 們后面來個別對付它們)
(3)所有的文件夾只保留administrator和internet來客用戶,其它的用戶都刪除。[注意:如果同時有.net環(huán)境還需要 USERS用戶!]
使權(quán)限可編輯的操作方法:文件夾的權(quán)限默認(rèn)是繼承來的,而繼承的權(quán)限不能直接編輯。操作方法如下,以web為例,打開該文件夾的屬性 對話框,點擊“安全”標(biāo)簽,點擊“高級”按鈕,把“允許把來自父系的可繼承權(quán)限傳播給該對象”的復(fù)選框中的鉤去掉,然后,又會彈出一對話框,點擊“復(fù) 制”,這樣,這個文件夾就復(fù)制到了默認(rèn)的那些權(quán)限(不是繼承的),就可以編輯了。
2、web的設(shè)置
如上所述,現(xiàn)在,web站點內(nèi)的所有文件internet來客用戶都有“讀取和運行”的權(quán)限。在此基礎(chǔ)上,需要進行特別設(shè)置的有(不作特別說明,都 指internet來客用戶):
database、 count:再添加“修改”的權(quán)限。
各頻道(如article)內(nèi)的UploadFiles和js文件夾:添加“修改”權(quán)限。
3、動網(wǎng)BBS:Data、UploadFiles、UploadFaces、 Dv_ForumNews這幾個文件夾都添加“修改”的權(quán)限。
4、再次強調(diào):那些需要寫入/修改權(quán)限的只是被改動的文件或文件夾,比如數(shù)據(jù)庫文件、數(shù)據(jù)庫文件夾;用來進行數(shù) 據(jù)庫操作的asp文件不需要設(shè)置為修改/寫入權(quán)限,它們只需要統(tǒng)一設(shè)置為讀取和運行!
二、IIS中的internet匿名用戶訪問權(quán)限的設(shè)置
一般地,IIS中,Asp網(wǎng)站中大多數(shù)的文件夾和文件要給予internet匿名用戶“讀取”和“純腳本”的執(zhí)行許可,切記不能選“寫入”,其它的用默認(rèn) 設(shè)置。
但是,對那些在文件夾權(quán)限設(shè)置時,給了internet來客用戶“修改”權(quán)的,要在IIS中重新設(shè)置它們的“執(zhí)行許可”權(quán):如果文件夾中沒有asp 和js文件的(如:data、UploadFiles),鉤選“讀取”,執(zhí)行許可都設(shè)置為“無”,即不允許任何腳本運行。這樣,即使這個文件夾中被寫入了 惡意程序,也不能運行。
三、卸載最不安全的組件
最簡單的辦法是直接卸載后刪除相應(yīng)的程序文件。將下面的代碼保存為一個.BAT文件,( 以下均以 WIN2000 為例,如果使用2003,則系統(tǒng)文件夾應(yīng)該是 C:\WINDOWS\ )
regsvr32/u C:\WINDOWS\System32\wshom.ocx
del C:\WINDOWS\System32\wshom.ocx
regsvr32/u C:\WINDOWS\system32\shell32.dll
del C:\WINNT\WINDOWS\shell32.dll
現(xiàn)在很多人的服務(wù)器都開始用Apache平臺,雖然Apache的名聲可能比IIS好,但IIS來做Web服務(wù)器的人一定也不少,因為很多站長都是從 asp慢慢走過來的,然后慢慢到php、jsp……
海天這幾天搞一個cms的網(wǎng)站,但不知道用什么核心,網(wǎng)上找了下,貌似jtbc的程序二次開發(fā) 的擴展性很大,于是就決定用這個核心了,但總不能老是上傳到服務(wù)器上測試吧,于是自己在XP環(huán)境下安裝搭建了一個IIS,來用作測試。
IIS 簡單的設(shè)置,海天原來也用過,但一直沒深入了解每個選項是做什么用的,正好這次搭建后文件夾有一點權(quán)限的問題,就在網(wǎng)上找了一篇不錯的文章,了解不少安全 相關(guān)的設(shè)置。就比如打開網(wǎng)站所在文件夾的“寫入”權(quán)限,和在IIS中控制面板打開寫入權(quán)限,效果是截然不同的,后者直接能被黑客利用,可見權(quán)限設(shè)置還是很 重要的啊。
IIS Web服務(wù)器的權(quán)限設(shè)置有兩個地方,一個是NTFS文件系統(tǒng)本身的權(quán)限設(shè)置,另一個是IIS下網(wǎng)站->站點->屬性->主目錄(或站點 下目錄->屬性->目錄)的面板上。
IIS WEB服務(wù)器下網(wǎng)站->站點->屬性->主目錄(或站點下目錄->屬性->目錄)面板上有:腳本資源訪問、讀取、寫入、瀏 覽、記錄訪問、索引資源6 個選項。在這6個選項中,其中“記錄訪問”和“索引資源”跟安全性關(guān)系不大,一般可以設(shè)置。但如果前四個權(quán)限都沒有設(shè)置的話,這兩個權(quán)限也沒有必要設(shè)置。 在設(shè)置權(quán)限時,記住這個規(guī)則即可,后面的例子中不再特別說明這兩個權(quán)限的設(shè)置。
另外在這 6 個選項下面的執(zhí)行權(quán)限下拉列表中還有:無、純腳本、純腳本和可執(zhí)行程序3 個選項。
[原圖需在原文查看]
現(xiàn)在的網(wǎng)站目錄大多是在 NTFS分區(qū),這樣還需要對NTFS 分區(qū)上的這個目錄的文件夾設(shè)置相應(yīng)權(quán)限,許多地方都介紹設(shè)置使用everyone的權(quán)限來達到控制訪問權(quán)限,實際上這是不好的。其實只要設(shè)置好 Internet來賓帳號(IUSR_xxxxxxx)或IIS_WPG 組的帳號權(quán)限就可以了。如果是設(shè)置 ASP、PHP 程序的目錄權(quán)限,那么只需要設(shè)置Internet 來賓帳號的權(quán)限,而對于ASP.NET 程序,則需要設(shè)置 IIS_WPG 組的帳號權(quán)限。
[原 圖需在原文查看]
有些人在XP系統(tǒng)下可能會發(fā)現(xiàn)沒有“安全”設(shè)置選項,你只需要打開我的電腦-工具-文件夾選項-查看,將“使用簡單文件共享(推 薦)”這個選項的勾去掉,就可以了。
ASP、PHP、ASP.NET 程序所在目錄的權(quán)限設(shè)置:
如 果程序是要執(zhí)行的,那么需要設(shè)置“讀取”權(quán)限,并且設(shè)置下面的執(zhí)行權(quán)限為“純腳本”。其他不要設(shè)置“寫入”和“腳本資源訪問”,更不要設(shè)置下面的執(zhí)行權(quán)限 為“純腳本和可執(zhí)行程序”。
而文件夾中的NTFS 權(quán)限中不要給IIS_WPG用戶組和Internet來賓帳號設(shè)置寫和修改權(quán)限。如果有一些特殊的配置文件(而且配置文件本身也是 ASP、PHP 程序)如需要刪除文件夾等,則需要給這些特定的文件配置NTFS權(quán)限中的 Internet 來賓帳號(ASP.NET 程序是 IIS_WPG 組)的寫權(quán)限,而不要配置 IIS 屬性面板中的“寫入”權(quán)限。
IIS設(shè)置面板中的“寫入”權(quán)限實際上是對 HTTP PUT指令的處理,對于普通網(wǎng)站,一般情況下這個權(quán)限是不要打開的。
IIS 面板中的“腳本資源訪問”不是指可以執(zhí)行腳本的權(quán)限,而是指可以訪問源代碼的權(quán)限,如果同時又打開“寫入”權(quán)限的話,那么就非常危險了,直接可以修改、刪 除網(wǎng)站的源代碼。
執(zhí)行權(quán)限中“純腳本和可執(zhí)行程序”權(quán)限是指可以執(zhí)行任意程序,包括 exe 可執(zhí)行程序,如果目錄同時有“寫入”權(quán)限的話,那么就很容易被黑客上傳并執(zhí)行木馬程序了。
對于ASP.NET程序的目錄,許多人喜歡在文件系統(tǒng) 中設(shè)置成Web共享,實際上這是沒有必要的。只需要在IIS中保證該目錄為一個應(yīng)用程序即可。如果所在目錄在IIS中不是一個應(yīng)用程序目錄,只需要在其屬 性->目錄面板中應(yīng)用程序設(shè)置部分點創(chuàng)建就可以了。Web 共享會給其更多權(quán)限,可能會造成不安全因素?!?
總結(jié):也 就是說一般不要打開IIS控制面板下主目錄的(寫入),(腳本資源訪問) 這兩項,以及不要選上(純腳本和可執(zhí)行程序),選(純腳本)就可以了。需要asp.net的應(yīng)用程序的如果應(yīng)用程序目錄不止應(yīng)用程序一個程序的可以在應(yīng)用 程序文件夾上(屬性)-目錄-點創(chuàng)建就可以了。不要在文件夾上選web共享。
上傳目錄的權(quán)限設(shè)置:
網(wǎng)站上可能會設(shè)置一個或幾個目錄允許上傳文件,上傳的方式一般是通過ASP、PHP、ASP.NET等程序來完成。這時需要注意,一定要將上傳 目錄的執(zhí)行權(quán)限(IIS控制面板下的)設(shè)為“無”,這樣即使黑客上傳了 ASP、PHP 等腳本程序或者exe程序,也不能在用戶瀏覽器里就觸發(fā)執(zhí)行。
同 樣,如果不需要用戶用PUT指令上傳,那么不要打開控制面板該上傳目錄的“寫入”權(quán)限。而應(yīng)該設(shè)置目錄的NTFS權(quán)限中的Internet來賓帳號 (ASP.NET 程序的上傳目錄是 IIS_WPG 組)的寫權(quán)限。
如果下載時,是通過網(wǎng)站程序讀取文件內(nèi)容然后再轉(zhuǎn)發(fā)給用戶的話,那么連 IIS控制面板的“讀取”權(quán)限也不要設(shè)置。這樣可以保證用戶上傳的文件只能被網(wǎng)站程序中已授權(quán)的用戶所下載。而不是知道文件存放目錄的用戶所下載?!盀g 覽”權(quán)限也不要打開,除非你就是希望用戶可以瀏覽你的上傳目錄,并可以選擇自己想要下載的東西。
總結(jié):一些 asp.php等程序都有一個上傳目錄。比如論壇,他們繼承了上面的屬性可以運行腳本的,我們應(yīng)該將這些目錄從新設(shè)置一下屬性,將執(zhí)行權(quán)限(純腳本)改成 (無)。
Access數(shù)據(jù)庫所在目錄的權(quán)限設(shè)置:
許多IIS用戶常常采用將Access 數(shù)據(jù)庫的后綴名mdb改名(改為asp或者aspx等)或者放在發(fā)布目錄之外的方法來避免瀏覽者下載數(shù)據(jù)庫。而實際上,這是不必要的。其實只需要在IIS 控制面板設(shè)置數(shù)據(jù)庫所在目錄(或者該文件)的“讀取”、“寫入”權(quán)限都去掉就可以防止被人下載或篡改了。
不必?fù)?dān)心這樣設(shè)置,網(wǎng)站程序會無法讀取和 寫入你的 Access 數(shù)據(jù)庫。網(wǎng)站程序需要的是NTFS 上Internet來賓帳號或IIS_WPG組帳號的權(quán)限,你只要將這些用戶的權(quán)限設(shè)置為可讀、可寫就完全可以保證網(wǎng)站程序能夠正確運行了。
總 結(jié):NTFS設(shè)置Internet 來賓帳號或IIS_WPG組帳號的權(quán)限可讀可寫.那么IIS控制面板中數(shù)據(jù)庫所在目錄(或者該文件)的“讀取”、“寫入”權(quán)限都去掉就可以防止被人下載或 篡改了。
其它目錄的權(quán)限設(shè)置:
你的網(wǎng)站下可能還有純圖片目錄、純 html 模版目錄、純客戶端 js 文件目錄或者樣式表目錄等,這些目錄只需要ISS控制面板設(shè)置“讀取”權(quán)限即可,執(zhí)行權(quán)限設(shè)成“無”即可。其它權(quán)限一概不需要設(shè)置。
其 實,海天的理解就是:IIS控制面板設(shè)置的是訪客在IE瀏覽器下瀏覽的權(quán)限,而NTFS文件夾設(shè)置是給網(wǎng)站程序執(zhí)行時需要的權(quán)限。
還有其他需要注 意的設(shè)置,大家知道的話補充下,讓更多人多注意一下網(wǎng)站的安全。
對了,還有誰比較了解JTBC的,聯(lián)系下,海天以后有問題去請教了。
總結(jié)
以上是生活随笔為你收集整理的asp网站文件夹权限设置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows server 禁用智能卡
- 下一篇: 军棋规则(军棋明棋玩法说明)