UNIX平臺下Apache服務的安全保護_Web服務器教程

      編輯Tag賺U幣
      教程Tag: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”是一個數據完整性監測工具,可以使用它來實時監視系統是否被更改。

      來源:網絡搜集//所屬分類:Web服務器教程/更新時間:2013-04-13
      相關Web服務器教程