加入收藏
如何取消服務器/主機空間目錄腳本的執行權限
如何取消服務器/主機空間目錄腳本的執行權限
支持版本: dedev57 dedev57 dedev57 dedev57
瀏覽:
2011-11-15  來源: 作者:天涯  編輯:admin

網站安全中,對目錄的執行權限是非常敏感的,一般來說,可以寫入的目錄是不能夠擁有腳本的執行權限的,像DedeCMS系統,可寫入的有兩個目錄data、uploads,data目錄主要是基本配置文件和緩存數據,uploads則是附件上傳保存的目錄,本篇將針對不同服務器環境來介紹如何取消這兩個目錄的執行權限,當然我們也建議用戶其他一些生成純靜態html的目錄,擁有可寫入權限的也統統去除執行權限,這樣系統會更為安全。

Windows下的IIS

IIS6.0

打開IIS中站點,在站點uploads目錄、data目錄以及靜態html生成目錄點擊右鍵,菜單中選擇“屬性”,在目錄屬性面板選擇執行權限為“無”即可。(如圖1)

(圖1)

 

IIS7

IIS7也類似于IIS6.0,選擇站點對應的目錄,data、uploads及靜態html文件目錄,雙擊功能試圖面板中的“處理程序映射”(如圖2)

(圖2)

在“編輯功能權限……”中,我們直接去除腳本的執行權限即可。(如圖3)

(圖3)

 

Apache下目錄腳本的執行權限設置

獨立主機配置

在Apache中,沒有Windows 下IIS的圖形管理界面,我們需要手工修改下apache的配置文件,來進行目錄腳本的執行權限的設定。
首先我們找到apache的配置文件httpd.conf,通常情況下,該配置文件在apache安裝目錄下的conf文件夾中(如圖4)。

(圖4)

打開httpd.conf文件,找到內容中如圖5的位置:

(圖5)

 

將需要限制執行腳本文件的目錄配置添加到下方:

配置內容為:

<Directory "DIR">     
<FilesMatch ".(php|asp|jsp)$">     
    Deny from all     
</FilesMatch> 
</Directory>

 

 配置內容中的DIR為需要限制執行腳本文件的目錄,FilesMatch后的內容為需要限定的執行的腳本后綴名。例如:這里需要禁止測試站點uploads文件夾下的PHP,ASP,JSP腳本的運行,則進行如下圖6配置:

(圖6)

 

在配置完成后,重啟一下apache,配置便生效!
在操作前,uploads文件夾下我新建了一個index.php文件,圖7為未作配置前訪問情況

(圖7)

圖8為重啟apache后訪問該頁面的效果。

(圖8)

虛擬主機/空間配置


在配置前需要確認你的空間是否支持.htaccess和rewrite,該方法基于.htaccess文件中使用rewrite來達到禁止指定腳本的運行效果。
規則內容如下:

RewriteEngine on  RewriteCond % !^$  
RewriteRule uploads/(.*).(php)$ – [F]  
RewriteRule data/(.*).(php)$ – [F]  
RewriteRule templets/(.*).(php)$ – [F]

 

針對uploads,data,templets 三個目錄做了執行php腳本限制;
將如上內容存儲至到.hatccess文件中,將該文件存放到你的站點根目錄下,

這樣,目錄腳本的執行權限就控制好了,規則上傳前后的效果同圖7,圖8。

 

 

感謝:djks、織夢的魚參與編輯

 

× 以上內容是否解決了您的問題呢?
我還有問題,我想繼續:
更多最新發布問題
更多熱門問題
發表評論
昵稱:
驗證碼:
點擊我更換圖片
內容:
最新跟帖 >>有疑問的可以跟貼提問!
月排行
總排行
英超比赛下注 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>