


三大開源工具監控Apache Web服務器性能
企業把其網站視為日常運作的關鍵業務。為了讓關鍵業務的功能運作一直保持在最佳性能,Linux系統管理員需要多種工具來幫助他們簡易有效地監控Web服務器。
以下三個開源工具可以幫助Linux管理員更進一步地理解他們的Web服務器的功能、潛在安全問題和訪客人數:
1.用Apache Bench的測試性能基準。解決非預期性能下降的最好方法是確保它不在最初時發生。一個叫做Apache Bench(ab)的工具可以用于測試服務器的性能基準并優化其配置。
Apache Bench的命令行界面很容易使用,系統管理員可以規定測試性能時應該現時發生的請求數量、POST凈負荷或者包含有效性能結果的輸出文件名。下面,你可以看看如何檢查GameNomad開發服務器的性能,這能讓你看到與在生產服務器上運行網站的對比性能:
該測試會發布總共1000個請求,同時執行10個請求:
$ ab -c 10 -n 1000 http://stage.gamenomad.com/
...
Benchmarking stage.gamenomad.com (be patient)
Completed 100 requests
Completed 200 requests
...
Completed 900 requests
Completed 1000 requests
Finished 1000 requests
Server Software: Apache/2.2.17
Server Hostname: stage.gamenomad.com
Server Port: 80
Document Path: /
Document Length: 9654 bytes
Concurrency Level: 10
Time taken for tests: 376.074 seconds
Complete requests: 1000
Failed requests: 8
(Connect: 0, Receive: 0, Length: 8, Exceptions: 0)
Write errors: 0
Total transferred: 9988344 bytes
HTML transferred: 9596168 bytes
Requests per second: 10.91 [#/sec] (mean)
Time per request: 916.872 [ms] (mean)
Time per request: 91.687 [ms] (mean, across all concurrent requests)
Transfer rate: 106.58 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 88 96 9.7 94 151
Processing: 320 739 496.8 491 2640
Waiting: 221 629 494.2 376 2539
Total: 413 835 495.6 587 2735
Percentage of the requests served within a certain time (ms)
50% 587
66% 729
75% 942
80% 1528
90% 1672
95% 1761
98% 1924
99% 2735
100% 2735 (longest request)
在信息返回到連接時間時,它把平均總連接時間分解成連接、等待和處理三個構成部分,并幫助識別潛在的瓶頸。
盡管沒有專用的最佳實踐指標應用到每一種情況,最快的就是最好的。當頁面下載緩慢時用戶不會逗留。
改進之后,再次運行ab(寧愿多試幾次)并把結果和最初的進行對比。試想一下,對比的不只是連接時間還有不同時間內服務的要求比率。從遠程服務器上運行ab盡可能的模仿真實世界的環境。
2.用Nikto評估服務器安全。一般的網站類似于一個電子版的中世紀古堡,不斷地有野蠻人在門上敲打。不同在于一個網站是全球規模的,所以一個自動化腳本或一些其它發明協同攻擊你Web服務器防衛的機會更大。
另外要采取積極措施,比如保持更新最新的安全補丁,把你自己當作潛在攻擊者的位置并針對可能的安全問題掃描服務器都是有意義的。
Nikto就是一種可用的工具,它是一個開源掃描器,它探查有關操作系統、Web服務器和軟件安裝的上千個已知漏洞。Nikto基于Perl,它可在包括Windows在內的所有操作系統上運行。一旦安裝,掃描一個網站就像提起Nilto和你想掃描的服務器名字一樣簡單:
$ nikto -h dev.gamenomad.com
盡管執行一次完全掃描不是一個壞主意,但記住,Nikto把綜合性放在其它因素之前。這意味著它會執行上千次連續的請求。
為此,你也許想要過濾Nikto的默認掃描范圍。選擇一個第三方安裝包整合時可能已經進入的特定漏洞。檢查執行已知SQL注入式攻擊的能力和已安裝軟件的可見性,分別在-T標志后加入7和b值:
$ nikto -h dev.gamenomad.com -T 7b
- Nikto v2.1.1
---------------------------------------------------------------------------
+ Target IP: 127.0.0.1
+ Target Hostname: dev.gamenomad.com
+ Target Port: 80
+ Start Time: 2011-08-03 13:05:22
---------------------------------------------------------------------------
+ Server: Apache/2.2.17 (Ubuntu)
+ No CGI Directories found (use ‘-C all’ to force check all possible dirs)
+ Retrieved X-Powered-By header: PHP/5.3.5-1ubuntu7.2
+ DEBUG HTTP verb may show server debugging information.
See http://msdn.microsoft.com/en-us/library/e8z01xdh%28VS.80%29.aspx for details.
+ 21 items checked: 2 item(s) reported on remote host + End Time: 2011-08-03 13:07:59 (157 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested
記住,Nikto只可以連同第三方軟件掃描報告的已知SQL注入式攻擊。它無法偵測自定義應用里引入的SQL注入式攻擊。
Nikto文件中有一個可用的完整漏洞選項列表,它包括的選項有創建報告、使用插件、運用超時壓制請求等。
3.用Piwik分析流量。谷歌分析在Web分析時確實已經是龍頭產品,但是其它分析工具也值得考慮。其中之一就是Piwik,它的目標是成為替代谷歌分析的開源選擇。
相比于AWStats和Webalizer等成熟的開源工具,Piwik還是一個新人,但是它平滑的界面、成熟的功能集、轉換及電子商務追蹤功能和可用于iOS和安卓的移動應用讓它難以被忽視。
Piwik的安裝和配置過程類似于谷歌分析,只需要在網站中插入追蹤代碼段的Java腳本。不同在于所有的分析信息都存儲在本地的數據庫中,在改變軟件方面沒有限制。
使用這三個開源解決方案可以更深刻地理解你的Web服務器的性能能力、潛在的安全問題和訪客人數。
關鍵字:監控Apache
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解