日誌服務管理
日誌服務管理
目錄系統日誌管理
系統日誌介紹
日誌檔案用於記錄linux系統的各種執行資訊的檔案,相當於linux主機的日記,不同的日誌檔案記載了不同型別的資訊,如Linux核心訊息、使用者登入事件、程式錯誤等。.
日誌檔案對於診斷和解決問題很有幫助,因為linux執行的程式通常把系統的訊息和錯誤寫入對應的日誌檔案,這樣系統可以有據可查, 此外,當主機遭受攻擊時,日誌檔案還可以幫助尋找攻擊者留下的痕跡。
日誌記錄的內容包括:
- 歷史事件:時間,地點,人物,事件
- 日誌級別:事件的關鍵性程度,Loglevel
sysklogd 系統日誌服務
CentOS 5 之前版本採用的日誌管理系統服務
- syslogd: system application 記錄應用日誌
- klogd: linux kernel 記錄核心日誌
事件記錄格式:
日期時間 主機 程序[pid]: 事件內容
C/S架構:通過TCP或UDP協議的服務完成日誌記錄傳送,將分佈在不同主機的日誌實現集中管理
rsyslog 系統日誌服務
rsyslog是CentOS 6以後版本的系統管理服務:它提供了高效能,出色的安全性和模組化設計。儘管rsyslog最初是常規的syslogd,但發展成為一種瑞士軍刀式的記錄工具,能夠接受來自各種來源的輸入,並將其轉換,然後輸出到不同的目的地。
當應用有限的處理時,RSYSLOG每秒可以將超過一百萬的訊息傳遞到本地目的地。即使在遠端的目的地和更精細的處理中,效能通常也被認為是驚人的”。
rsyslog 特性
- 多執行緒
- UDP, TCP, SSL, TLS, RELP
- MySQL, PGSQL, Oracle實現日誌儲存
- 強大的過濾器,可實現過濾記錄日誌資訊中任意部分
- 自定義輸出格式
- 適用於企業級中繼
ELK
ELK:由Elasticsearch, Logstash, Kibana三個軟體組成
- 非關係型分散式資料庫基於apache軟體基金會jakarta專案組的專案lucene
- Elasticsearch是個開源分散式搜尋引擎,可以處理大規模日誌資料,比如:Nginx、Tomcat、系統日誌等功能
- Logstash對日誌進行收集、分析,過濾,並將其儲存供以後使用
- Kibana 可以提供的日誌分析友好的 Web 介面
rsyslog管理
系統日誌術語
facility:設施,從功能或程式上對日誌進行歸類
auth:密碼認證相關日誌
authpriv: 授權相關的日誌
cron:定時任務相關日誌
daemon: 系統服務相關的日誌
ftp:ftp守護程序產生的曰志
kern: 核心相關的日誌
lpr: 列印相關的日誌
mail: 郵件相關的日誌
news: 新聞相關的日誌
security: 安全相關的日誌
user: 使用者相關的日誌
uucp: 檔案copy相關的日誌
syslog:系統日誌
自定議的分類
local 0-7
日誌等級
等級名稱 | 說 明 |
---|---|
debug (LOG_DEBUG) | 一般的除錯資訊說明 |
info (LOG_INFO) | 基本的通知資訊 |
notice (LOG_NOTICE) | 普通訊息,但是有一定的重要性 |
warning(LOG_WARNING) | 警吿資訊,但是還不會影響到服務或系統的執行 |
error(LOG_ERR) | 錯誤資訊, 一般達到err等級的資訊已經可以影響到服務成系統的運行了 |
crit (LOG_CRIT) | 臨界狀況信思,比err等級還要嚴® |
alert (LOG_ALERT) | 狀態資訊,比crit等級還要嚴重,必須立即採取行動 |
emerg (LOG_EMERG) | 疼痛等級資訊,系統已經無法使用了 |
* | 代表所有日誌等級。比如,“authpriv.*”代表amhpriv認證資訊服務產生的日誌,所有的日誌等級都記錄 |
rsyslog 配置檔案
檔案位置:/etc/rsyslog.conf
實際操作
將ssh服務的日誌單獨設定
網路日誌(遠端日誌功能)
作用:將多臺伺服器的日誌檔案傳輸到一臺伺服器
示例(一臺對一臺)
伺服器1
切換伺服器2
這裡注意:如果是用udp傳輸則ip地址前方加一個@即可tcp為兩個
切換伺服器1