亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Apache > 正文

監視并記錄Apache網站服務器的運行

2024-08-27 18:22:39
字體:
來源:轉載
供稿:網友
在Apache下的日志簡介

    Apache提供了廣泛記錄運行時各方面信息的工具。比如有條件性的記錄日志,日志循環,確定IP地址等時普遍會遇到的問題。還講解很多用于檢測您的Apache服務器狀態以及分析其日志的捆綁的第三方模塊和工具。

默認的Apache日志文件

    Apache提供很多檢測和日志工具來追蹤服務器的正確運行。默認的Apache配置提供兩個日志文件,放置在安裝目錄下的日志目錄里面。

access_log 這個文件(在windows下對應access.log文件)包含了服務器已經處理過的請求的信息,比如說請求的URL,客戶端的IP地址,請求是否被成功完成等。error_log 這個文件(在windows下對應error.log文件)包含了與錯誤情況相關的信息,以及服務器生命周期中不同的大事件。

創建日志格式
LogFormat "%h %l %u %t ""%r"" %>s %b" common
LogFormat "%h %l %u %t ""%r"" %>s %b"
    ""%{Referer}i"" ""%{User-agent}i""" combined

    LogFormat 指令允許你告訴Apache你想要記錄請求的哪些方面。而你仍需附加的指令來告訴Apache在哪里記錄那些信息,這在下一章中將會介紹。下面的例子顯示了兩種最受歡迎的格式的配置:普通日志格式和整合日志格式。當Apache收到一個請求,他將會用相應的請求屬性來替代以%為前綴的每一個域。如果您正在使用普通日志格式,您的日志文件里的每一項輸入看起來都將是這樣的:
192.168.200.4 - someuser [12/Jun/2005:08:33:34
    +0500] "GET /example.png HTTP/1.0" 200 1234

    如果您正在使用整合日志格式,您的日志文件里的每一項輸入看起來則都將是這樣的:
192.168.200.4 - someuser [12/Jun/2005:08:33:34
    +0500] "GET /example.png HTTP/1.0" 200 1234
    http://www.example.com/index.html "Mozilla/5.0
    (Windows; U; Windows NT 5.1; en-US; rv:1.7.7)"

    盡管有附件提供日志格式的詳盡索引,下表描述了一些最為重要的域:
# %h: 客戶端(例如,瀏覽器)向服務器發出連接請求時自己的當時的IP地址或域名(需開啟HostNameLookups)。
# %u: 使用HTTP方式認證用戶時,記錄下的用戶的編號。
# %t: 服務器接受到連接請求的時間。
# %r: 客戶端發出的原始連接請求中的文本信息,包含所使用的HTTP方法。
# %>s: 服務器應答瀏覽器后的返回狀態代碼,200表示請求成功。.
# %b: 服務器應答瀏覽器發出的單個請求的回傳對象的內容大?。ㄗ止潪閱挝唬?,不統計數據包頭部字節。
整合日志格式在普通日志格式的基礎上擴展出了兩個附加的域。定義為:
# %{Referer}i: 連接請求數據包包頭,包含指向當前頁面的文檔關聯信息。
# %{User-agent}i: 用戶代理連接請求數據包包頭,包含客戶瀏覽器的信息。

創建一個自定義日志文件
CustomLog logs/access_log common
TransferLog logs/sample.log

    您可能會想創建Apache自帶以外的新的日志文件。下面的例子將運用CustomLog來創建一個新的日志文件,并保存由一個之前定義好的日志格式,即前一章提到的common,所定義的信息。您還可以用格式本身的定義來替換昵稱。一個附加的,更為簡單的指令是Transferlog,它只接受最后一個 LogFormat指令提供的定義。

重導向日志到一個外部的程序
TransferLog "|bin/rotatelogs /var/logs/apachelog
86400"


    你也可以用CustomLog或TransferLog將日志的輸出重導向(輸出)到一個外部的程序,而不是一個文件。要做到這一點,首先您需要以輸出字符 "|"開頭,跟著是接收日志標準輸入信息的程序之路經。本例運用Apache自帶的rotatelogs程序,在稍后的章節中會對其有所介紹。

    當有一個外部程序被使用,它將作為啟動httpd的用戶被運行。如果服務器是被超級管理員所啟動,它就會是超級管理員,完全確保這個程序是安全的。并且,當進入一個非Unix平臺上的一個文件路徑時,需要小心確保只有正斜杠被使用,即使這個平臺可能是允許使用反斜杠的??偟膩碚f,在整個配置文件中總是使用正斜杠是個好主意。

有條件的日志請求

SetEnvIf Request_URI "(.gif|.jpg)$" image
CustomLog logs/access_log common env=!image
SetEnvIf Remote_Addr 192.168.200.5 specialmachine
CustomLog logs/special_access_log common env=specialmachine

    你可以根據可變的環境決定是否記錄一個請求。這種可變可以根據許多參數,比如客戶端的IP地址或請求中某個頭部的存在,事先設置好。正如本例中所顯示, CustomLog指令可以將可變的環境作為第三個參數來接受。如果存在可變的環境,它就將被記錄,否則就不會。如果這個可變的環境被一個"!"開頭否定,那么不存在可變的環境將會被記錄。本例將告訴您如何避免在日志里以GIF和JPEG的格式記錄圖像,及如何從一個特定的IP地址記錄請求道一個單獨的日志文件。另一個例子請參加下一節。

誰在連接你的網站
SetEnvIfNoCase Referer www.example.com internalreferral
LogFormat "%{Referer}i -> %U" referer
CustomLog logs/referer.log referer env=!internalreferral

    可以通過記錄Referer的值來檢測哪些人連接了你的網站,Referer變量位于用戶發送連接請求數據包的頭部,數據包頭中還包含了用戶訪問的目的網站的URL地址。通過這種方法可以記錄下絕大部分網站訪問者。也可以把來自特定網站(www.example.com)地址段的來訪者排除出日志記錄文件。
利用模塊參數(mod_status)來監視Apache服務器
<location /server-status>
  SetHandler server-status
  Order Deny,Allow
  Deny from all
  Allow from 192.168.0
</location>


    Apache 服務器中可以使用的功能模塊很多,有服務器內置的也有外掛的,這些模塊工作的狀態和性能就是通過mod_status參數來記錄的,記錄的內容有“哪些模塊參與了網站應答服務、哪些模塊處于空閑狀態、服務器的開啟/關閉時間。正在處理的連接請求數和訪問者數量(需要指定ExtendedStatus記號) -該模塊記錄對高負荷網站服務器性能有很大影響”。例子中記錄的模塊狀態統計結果可以用瀏覽器訪問http://www.example.com/server-status頁面來查看。

通過SNMP協議來監視Apache服務器

    SNMP 是簡單網管協議,支持SNMP的服務器或網絡設備可以被OpenView、Tivoli等網管軟件統一管理,目前有很多開源的SNMP模塊可以加裝到 Apache網站服務器之上,對于Apache 1.3版來講,mod_snmp模塊可以支持第1版和2版的SNMP協議;對于Apache 2版來講,mod_apache_snmp模塊可以編譯成Apache的DSO直接支持第1版、第2版和第3版的SNMP協議。有了SNMP模塊,外部網管軟件就可以對Apache網站服務器的各種實時性能參數進行查看了,這些參數包含“服務器連續在線時間、平均負載、一段時間內的錯誤數、提供網站服務的字節數和連接請求數”。SNMP模塊遇到突然激增的并發連接請求數時會向控制臺報警。管理SNMP資源的開源工具軟件有:“net-snmp, OpenNMS,Najios等”。

用開源工具分析日志

    有很多開源和商業版的工具軟件可以對產生的Apache日志文件做分析和處理,通常的步驟是:

1.選取一個日志文件。
2.分析日志文件內容。
3.生成包含不同類別內容的統計信息網頁輸出。

    Webalizer(http://www.mrunix.net/webalizer/)和AWStats(http://awstats.sf.net)是較為流行的日志文件分析工具;還有一些工具可以記錄來訪者具體訪問路線,比如Vistors和Pathalizer工具,可以分別從http://www.hping.org/visitors/和http://pathalizer.bzzt.net/下載。

實時監視日志

    使用apachetop命令行工具來顯示apache服務器當前的運行狀態,類似于Unix等系統下的top命令工具。對流量比較低的Unix- Apache網站也可以使用tail命令來記錄實時日志信息,tail -f /logfile/。通過掃描錯誤日志文件中的記錄,分析出惡意連接請求,常用的錯誤日志文件掃描工具有Logscan和ScanErrLog,可以分別從http://www.garand.net/security.php和http://www.librelogiciel.com/software/去下載這些工具。

將連接請求日志記錄到數據庫

    Apache 本身沒有將記錄轉發到數據庫的功能,必須要第三方腳本和模塊來支持。這里列舉幾個:mod_log_sql模塊允許將連接請求直接記入MySQL數據庫,然后用Apache LogView SQL工具來參看庫中的記錄;pglogd工具可以記錄日志到PostgreSQL數據庫中。

將日志文件轉存和歸檔
CustomLog "|bin/rotatelogs /var/logs/apachelog
86400" common

    如果網站流量較高,日志文件很容易就會變得很大,需要進行轉存和歸檔處理。轉存日志文件時需要壓縮和保存,在線進行這項工作可以使用Apache提供的rotatelogs來完成,類似工具還可以在http://cronolog.org/上找到。例子中用rotatelogs工具將每天的日志做了轉存和歸檔處理,一天共有86400秒。查看Apache幫助文件可以了解更多的rotatelogs工具參數。注意如果rotatelogs工具所在的目錄名含有空格,則需要用跳轉符號來指定。

IP地址和域名之間對應處理

    將HostNameLookups 設置成on,那么日志記錄中將顯示來訪者所在的域名,設置成on可降低服務器性能。為了解決這一問題,Apache提供了一個事后分析IP地址域名信息的工具logresolve,例如$ logresolve < access_log > resolved_log

    如果用代理服務器或網關設備來完成的網站訪問,Apache服務器將只能記錄到代理服務器和網關的IP地址和域名。

如何自動啟動Apache服務器
#!/bin/bash
if [ 'ps -waux | grep -v grep | grep -c httpd' -lt 1
]; then apachectl restart; fi

    在windows 平臺下以服務方式啟動的Aapche遇到意外退出后可以由服務管理器自動自動,Unix平臺下需要借助watchdog腳本來實現自動啟動功能, watchdog程序專門用來監視其他程序的運行狀態,發現被監視的程序退出或停止后可以重新將他們啟動。例子中簡單的linux腳本將監視系統的進程表,如果網站服務器httpd進程消失,則負責將它重新啟動,使用該腳本的條件有2個,首先保證該腳本文件具備可執行權限,第二必須將該文件設置到 cron文件中,使之可以在預定的時間間隔內運行,如果使用Solaris系統,需要將例子中的ps -waux改成ps -ef。用戶可以訪問http://perl.apache.org/docs/general/control/control.html網頁發現更多高級的watchdog類腳本工具,大多數linux發行版自帶一些用于Apache的腳本工具。

日志文件的分割和合并

    如果用戶的網站環境是用服務器集群來搭建的,通常需要將所有服務器上的日志做合并成單個文件后,才可以進行分析和處理。相似的道理,如果在單臺服務器上運行多個虛擬網站,則需要將單個日志文件分割成多個部分供不同的虛擬網站用戶去分析。在Apache服務器源碼的support/文件夾下可以找到相應的腳本工具split-logfile等。在http://www.coker.com.au/logtools/網頁可以找到一些其他的日志工具。比如vlogger工具就可以替代cronologs來對單個服務器上的虛擬網站日志進行分別處理,該工具在http://n0rp.chemlab.org/vlogger/下載。

為虛擬網站保存獨立的日志文件
<virtualhost>
  ServerName vhost1.example.com
  CustomLog logs/vhost1.example.com_log combined
  ErrorLog logs/vhost2.example.com_log
  .......
</virtual host>

    使用CustomLog標志段在Apache配置文件的<Virtualhost>區塊內實現虛擬網站日志文件的獨立處理。
LogFormat "%v %h %l %u %t ""%r"" %>s %b" common_virtualhost
CustomLog logs/access_log common_virtualhost

    在Apache全局配置中配置方法,其中的v%負責把提供服務的虛擬網站記錄下來,對于配置了很多虛擬網站的單臺服務器來說,這種配置不錯。如果不想記錄虛擬服務器的日志只需要在配置文件中加入"CustomLog /dev/null"就可以了。

日志文件中常見的條目

缺少favicon.ico文件,該文件可在瀏覽器的標題欄顯示網站的個性圖案;
缺少robots.txt文件,利于站點復制工具和搜索引擎使用;
覆寫httpd.pid文件,網站服務器不正常退出后遺留的PID記錄文件;
陌生的長記錄條,
"SEARCH /x90x02xb1x02xb1x02xb1x02 ..."
"GET /scripts/..%252f../winnt/system32/cmd.exe?/
  c+dir HTTP/1.0..."
"GET /default.ida?NNNNNNN NNNNNNNNNNNNNNNNNN ..."

    類似的記錄條表示訪問者請求了網站上根本沒有的cmd.exe,root.exe或dir等文件。
日志文件中的一些條目經常反映了那些自動探測網站服務器漏洞的動作,多數來源于針對IIS網站服務器的蠕蟲和惡意程序。有時候也會發現一些針對Apache的漏洞,所以為了保證Apache的正常運行,用戶應保持經常更新Apache軟件。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美日韩精品久久亚洲区| 国产成人av网址| 欧美色视频日本版| 久久人人看视频| 亚洲在线观看视频网站| 国产精品免费视频xxxx| 国产精品美乳一区二区免费| 成人激情av在线| 国产精品亚洲一区二区三区| 亚洲国产精品女人久久久| 一区二区三区久久精品| 国产亚洲免费的视频看| 久久久免费在线观看| 欧美性猛交xxxx久久久| 中文.日本.精品| 欧美一级电影免费在线观看| 少妇激情综合网| 欧美激情伊人电影| 国产91色在线播放| 国产美女91呻吟求| 欧美成人午夜激情在线| 欧美三级欧美成人高清www| 91色精品视频在线| 国产午夜精品一区二区三区| 亚洲国内精品视频| 狠狠久久五月精品中文字幕| 亚洲精品狠狠操| 日本精品视频网站| 日韩高清电影免费观看完整| 狠狠色噜噜狠狠狠狠97| 国产在线视频欧美| 国产999精品视频| 亚洲精品久久在线| 精品呦交小u女在线| 亚洲精品视频在线观看视频| 91网站免费观看| 日本欧美中文字幕| 亚洲视频第一页| 日韩视频在线观看免费| 隔壁老王国产在线精品| 久久久久久久影院| 色av中文字幕一区| 亚洲一区中文字幕在线观看| 色偷偷亚洲男人天堂| 国产专区精品视频| 欧美精品久久久久久久免费观看| 成人a在线视频| 成人国产在线视频| 三级精品视频久久久久| 精品女同一区二区三区在线播放| 亚洲欧美国产va在线影院| 91在线观看免费高清完整版在线观看| 亚洲欧美成人精品| 国产丝袜一区二区三区免费视频| 国产精品白嫩初高中害羞小美女| 亚洲一区中文字幕在线观看| 国产成人精彩在线视频九色| 欧美激情二区三区| 亚洲人午夜精品免费| 91精品久久久久久久久| 日本成人在线视频网址| 深夜福利一区二区| 欧美中文字幕第一页| 亚洲在线第一页| 国产精品pans私拍| 久久亚洲精品中文字幕冲田杏梨| 国产欧美日韩中文字幕在线| 久久婷婷国产麻豆91天堂| 色偷偷综合社区| 亚洲国产成人爱av在线播放| 97久久精品视频| 午夜精品福利在线观看| 日本aⅴ大伊香蕉精品视频| 日韩中文字幕在线精品| 亚洲精品美女在线观看播放| 欧美激情极品视频| 精品亚洲精品福利线在观看| 久久久精品国产一区二区| 久久综合免费视频影院| 欧美激情在线有限公司| 精品人伦一区二区三区蜜桃网站| 日韩中文在线不卡| 国产精品久久二区| 久久久99久久精品女同性| 精品久久久久久久久久久久久| 亚洲性日韩精品一区二区| 国产国语videosex另类| 国产精品成人va在线观看| 一本一道久久a久久精品逆3p| 日韩欧美国产骚| 日韩不卡中文字幕| 美女久久久久久久| www.国产精品一二区| 日本一本a高清免费不卡| 日韩欧美国产高清91| 色偷偷88888欧美精品久久久| 国模极品一区二区三区| 欧美性xxxxxxxxx| 亚洲国产美女精品久久久久∴| 精品欧美aⅴ在线网站| 精品无人区乱码1区2区3区在线| 国产免费一区二区三区在线能观看| 深夜精品寂寞黄网站在线观看| 这里只有精品丝袜| 亚洲区免费影片| 欧美亚洲激情在线| 亚洲毛茸茸少妇高潮呻吟| 久久久亚洲网站| 欧美激情在线播放| 日韩电影免费观看中文字幕| 2019日本中文字幕| 国产精品欧美一区二区| 色婷婷av一区二区三区久久| 成人高清视频观看www| 7777免费精品视频| 中文国产成人精品久久一| 亚洲欧美在线看| 国产97免费视| 国产一区av在线| 亚洲欧美另类国产| 美女精品视频一区| 中文字幕亚洲情99在线| 国产欧美精品在线播放| 欧美美最猛性xxxxxx| 日韩成人在线播放| 国产精品www色诱视频| 国产精品激情自拍| 成人网页在线免费观看| 2024亚洲男人天堂| 欧美大片大片在线播放| 亚洲网站在线观看| 国产男女猛烈无遮挡91| 日韩欧美在线视频免费观看| 91日本在线视频| 一级做a爰片久久毛片美女图片| 日韩美女免费观看| 国产一区二区丝袜高跟鞋图片| 久久久噜久噜久久综合| 免费成人高清视频| 日韩精品视频免费在线观看| 欧美一级淫片videoshd| 国产精品美女免费看| 欧美一级在线亚洲天堂| 成人av在线网址| 日本免费久久高清视频| 国产在线久久久| 欧美色图在线视频| 免费不卡欧美自拍视频| 欧美国产激情18| 中文字幕av一区二区三区谷原希美| 国产精品久久久久久久久久小说| 成人夜晚看av| 精品一区二区三区四区在线| 成人黄色免费片| 亚洲三级 欧美三级| 成人伊人精品色xxxx视频| 5252色成人免费视频| 久久人人爽人人| 97久久久免费福利网址| 中文字幕av一区二区三区谷原希美| 欧美精品一区在线播放| 久久天天躁日日躁| 色视频www在线播放国产成人| 国内精品久久影院|