如何取消伺服器/主機空間目錄指令碼的執行許可權

來源:互聯網
上載者:User

  網站安全中,對目錄的執行許可權是非常敏感的,一般來說,可以寫入的目錄是不能夠擁有指令碼的執行許可權的,像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)

  將需要限制執行指令檔的目錄配置添加到下方:

  配置內容為:

  1

  2

  3 Deny from all

  4

  5

  配置內容中的DIR為需要限制執行指令檔的目錄,FilesMatch後的內容為需要限定的執行的指令碼尾碼名。例如:這裡需要禁止測試網站uploads檔案夾下的PHP,ASP,JSP指令碼的運行,則進行如下圖6配置:

  (圖6)

  在配置完成後,重啟一下apache,配置便生效!

  在操作前,uploads檔案夾下我建立了一個index.php檔案,圖7為未作配置前訪問情況

  (圖7)

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

  (圖8)

  虛擬機器主機/空間配置

  在配置前需要確認你的空間是否支援.htaccess和rewrite,該方法基於.htaccess檔案中使用rewrite來達到禁止指定指令碼的運行效果。

  規則內容如下:

  1RewriteEngine on RewriteCond % !^$

  2RewriteRule uploads/(.*).(php)$ – [F]

  3RewriteRule data/(.*).(php)$ – [F]

  4RewriteRule templets/(.*).(php)$ – [F]

  針對uploads,data,templets 三個目錄做了執行php指令碼限制;

  將如上內容儲存至到.hatccess檔案中,將該檔案存放到你的網站根目錄下,

  這樣,目錄指令碼的執行許可權就控制好了,規則上傳前後的效果同圖7,圖8。

相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。