歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix教程 >> UNIX平台下Apache服務的安全保護

UNIX平台下Apache服務的安全保護

日期:2017/2/27 17:42:33   编辑:Unix教程
Apache
  Apache服務器是眾多WEB服務器中,一個設計上較安全的程序;但它也同樣存在諸多缺陷,比如可以使用HTTP協議進行拒絕訪問攻擊等。因此合理的設置是保證Apache服務免遭攻擊的首要任務。
  
  一. Apache服務缺陷分析
  
  緩沖區溢出。攻擊者利用程序編寫的一些缺陷,使程序偏離正常的流程;接著發送一個超長請求使緩沖區溢出。一旦系統緩沖區溢出,攻擊者就可對攻擊端使用各種惡意指令了。
  
  輕易獲得root權限。該缺陷主要是因為Apache服務器一般以root權限運行,攻擊者會通過此途徑獲得root權限,進而控制整個Apache系統。
  
  “拒絕服務”(DoS)攻擊。它主要是存在於Apache的chunk encoding中,這是一個HTTP協議定義的用於接受web用戶所提交數據的功能。這會造成Apache對系統資源需求的劇增,並最終導致系統變慢乃至癱瘓。
  
  二. 主Apache服務配置參考
  
  Apache服務除了主配置文件“httpd.conf”外,還有兩個重要的配置文件,它們分別是:
  
  srm.conf     填加資源文件
  access.conf   設置文件的訪問權限
  
  三個文件都位於/usr/local/apache/conf目錄下,大部分服務配置都在這三個文件裡完成。
  
  1.配置Apache服務器的目錄安全認證。
  
  在Apache Server中是允許使用 .htaccess做目錄安全保護的,欲讀取這保護的目錄需要先鍵入正確用戶帳號與密碼。這樣可做為專門管理網頁存放的目錄或做為會員區等。或者在配置文件“httpd.conf”中加入以下內容也可達到目的:
  
  options indexes followsymlinks
  allowoverride authconfig
  order allow,deny
  allow from all
  
  2.合理設置訪問控制。
  
  主要設置配置文件“access.conf”。它包含一些指令控制比如允許什麼用戶訪問Apache目錄等。可以通過以下舉例的設置來允許來自某個域、某個IP地址或者IP段的訪問。
  
  <directory /usr/local/http/docs/private>
  <limit>
  order deny,allow
  deny from all
  allow from safechina.net
  </limit>
  </directory>
  
  解釋:在此配置指令中,將“deny from all”設為初始化指令,再使用“allow from”指令來打開訪問權限。
  
  3.合理設置密碼保護。
  
  密碼保護問題是任何程序、任何系統都要注意的問題。在Apache服務環境下,可以在“httpd.conf”或“srm.conf”配置文件中使用“AccessFileName”指令打開目錄的訪問控制。舉例如下:
  
  AuthName PrivateFiles
  AuthType Basic
  AuthUserFile /path/to/httpd/users
  require Phoenix
  # htpasswd -c /path/to/httpd/users Phoenix      #增加一個用戶
  
  總結:
  
  Apache是一款非常優秀的服務器,只要能夠正確配置和維護好Apache服務器,一定會感受到Apache服務所帶來的吸引力。總的說來,在Apache的安裝維護中應注意以下方面的問題:
  
  檢查文件和目錄的權限是否恰當。
  
  httpd.conf、srm.conf和access.conf這三個配置文件設置是否恰當。
  
  對某些需要特別保護的目錄使用密碼保護機制(.htaccess)。
  
  讓服務器日志文件盡可能的詳細記錄信息。
  
  對CGI腳本進行封裝,如果CGI腳本使用的是Perl編寫,一定要詳細檢查其安全性。
  
  使用TCP Wrappers和Tripwire安全工具。其中“TCP Wrappers”可以限制Telnet和FTP的訪問權限;而“Tripwire”是一個數據完整性監測工具,可以使用它來實時監視系統是否被更改。
Copyright © Linux教程網 All Rights Reserved