萬盛學電腦網

 萬盛學電腦網 >> 安全資訊防護 >> 開源服務器安全防護解析

開源服務器安全防護解析

    Apache 服務簡介

    Web 服務器也稱為 WWW 服務器或 HTTP 服務器 (HTTP Server),它是 Internet 上最常見也是使用最頻繁的服務器之一,Web 服務器能夠為用戶提供網頁浏覽、論壇訪問等等服務。

    由於用戶在通過 Web 浏覽器訪問信息資源的過程中,無須再關心一些技術性的細節,而且界面非常友好,因而 Web 在 Internet 上一推出就得到了爆炸性的發展。現在 Web 服務器已經成為 Internet 上最大的計算機群,Web 文檔之多、鏈接的網絡之廣,也令人難以想像。因此,Web 服務器軟件的數量也開始增加,Web 服務器軟件市場的競爭也越來越激烈。本文所討論的就是一款最常用的 Web 服務器軟件—— Apache.

    Apache 是一個免費的軟件,用戶可以免費從 Apache 的官方網站下載。任何人都可以參加其組成部分的開發。Apache 允許世界各地的人對其提供新特性。當新代碼提交到 Apache Group 後,Apache Group 對其具體內容進行審查並測試和質量檢查。如果他們滿意,該代碼就會被集成到 Apache 的主要發行版本中。

    Apache 的其他主要特征有:

    支持最新的 HTTP 協議:是最先支持 HTTP1.1 的 Web 服務器之一,其與新的 HTTP 協議完全兼容,同時與 HTTP1.0、HTTP1.1 向後兼容。Apache 還為支持新協議做好了准備。

    簡單而強大的基於文件的配置:該服務器沒有為管理員提供圖形用戶界面,提供了三個簡單但是功能異常強大的配置文件。用戶可以根據需要用這三個文件隨心所欲地完成自己希望的 Apache 配置。

    支持通用網關接口(CGI):采用 mod_cgi 模塊支持 CGI.Apache 支持 CGI/1.1 標准,並且提供了一些擴充。

    支持虛擬主機:是首批既支持 IP 虛擬主機又支持命名虛擬主機的 Web 服務器之一。

    支持 HTTP 認證:支持基於 Web 的基本認證。它還有望支持基於消息摘要的認證。

    內部集成 Perl:Perl 是 CGI 腳本編程的事實標准。Apache 對 Perl 提供了良好的支持,通過使用其 mod_perl 模塊,還可以將 Perl 的腳本裝入內存。

    集成代理服務器:用戶還可以選擇 Apache 作為代理服務器。

    支持 SSL:由於版本法和美國法律在進出口方面的限制,Apache 本身不支持 SSL.但是用戶可以通過安裝 Apache 的補丁程序集合(Apache-SSL)使得 Apache 支持 SSL.

    支持 HTTP Cookie:通過支持 Cookie,可以對用戶浏覽 Web 站點進行跟蹤。

    Apache 服務面臨的網絡威脅

    一般說來,Apache 服務器主要面臨如下幾種網絡威脅:

    使用 HTTP 協議進行的拒絕服務攻擊:攻擊者會通過某些手段使服務器拒絕對 HTIP 應答。這樣會使 Apache 對系統資源(CPU 時間和內存)需求巨增,造成 Apache 系統變慢甚至完全癱瘓,從而引起 HTTP 服務的中斷或者合法用戶的合法請求得不到及時地響應;

    緩沖區溢出攻擊:由於 Apache 源代碼完全開放,攻擊者就可以利用程序編寫的一些缺陷,使程序偏離正常流程。程序使用靜態分配的內存保存請求數據,攻擊者就可以發送一個超長請求使緩沖區溢出,從而導致緩沖區溢出攻擊;

    被攻擊者獲得 root 權限,威脅系統安全:由於 Apache 服務器一般以 root 權限運行,攻擊者通過它獲得 root 權限,進而控制整個 Apache 系統;

    Apache 服務器與客戶端通信安全:如果采用明文傳輸,則服務器與客戶端的敏感通信信息將有可能被黑客或者不法用戶獲取;

    由於 Apache 配置文件設置不當引起的安全問題:惡意者可以隨意下載或修改刪除系統文件。這主要涉及到對訪問者的內容和權限的限制。

    要應對上述這些安全威脅,要從 Apache 服務器端配置、運行環境、通信鏈路安全保障、安全模塊使用、日志管理等各方面、全方位的進行保障,下面將進行分門別類的詳細介紹。

    Apache 服務器端安全設置

    限制 root 用戶運行 Apache 服務器

    一般情況下,在 Linux 下啟動 Apache 服務器的進程 httpd 需要 root 權限。由於 root 權限太大,存在許多潛在的對系統的安全威脅。一些管理員為了安全的原因,認為 httpd 服務器不可能沒有安全漏洞,因而更願意使用普通用戶的權限來啟動服務器。http.conf 主配置文件裡面有如下 2 個配置是 Apache 的安全保證,Apache 在啟動之後,就將其本身設置為這兩個選項設置的用戶和組權限進行運行,這樣就降低了服務器的危險性。

copyright © 萬盛學電腦網 all rights reserved