自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

明明白白你的Linux服務(wù)器——日志篇

原創(chuàng)
系統(tǒng) Linux
對于一個Linux的系統(tǒng)管理員來說,系統(tǒng)日志可謂是相當(dāng)重要,因為你可以從日志中看到系統(tǒng)做的任何一件事情。熟練的掌握系統(tǒng)日志是一個網(wǎng)管員必不可少的技能。

【51CTO獨(dú)家特稿】日志對于安全來說,非常重要,它記錄了系統(tǒng)每天發(fā)生的各種各樣的事情,你可以通過他來檢查錯誤發(fā)生的原因,或者受到攻擊時攻擊者留下的痕跡。日志主要的功能有:審計和監(jiān)測。他還可以實時的監(jiān)測系統(tǒng)狀態(tài),監(jiān)測和追蹤侵入者等等。正因為如此,撫琴煮酒特的將它整理成一篇比重跟硬件篇、網(wǎng)絡(luò)篇并列的文章,作為《明明白白你的Linux服務(wù)器》系列的第三篇,希望大家能從中學(xué)習(xí)到對自己有用的東西。

一、配置syslog(gyl4802959同學(xué)撰寫)

目前,linux依舊使用syslogd作為日志監(jiān)控進(jìn)程,對其進(jìn)行必要的配置能減少很多麻煩,并且可更有效的從系統(tǒng)日志監(jiān)控到系統(tǒng)的狀態(tài)。理解并完善一個syslog的配置,對于系統(tǒng)管理員來說顯得尤為重要。
/etc/syslog.conf根據(jù)如下的格式定義規(guī)則: facility.level action
設(shè)備.優(yōu)先級 動作facility.level 字段也被稱為seletor(選擇條件),選擇條件和動作之間用空格或tab分割開。
#號開頭的是注釋,空白行會自動跳過。

1、facility

facility定義日志消息的范圍,其可使用的key有: auth -由 pam_pwdb 報告的認(rèn)證活動。
authpriv -包括特權(quán)信息如用戶名在內(nèi)的認(rèn)證活動
cron -與 cron 和 at 有關(guān)的計劃任務(wù)信息。
daemon -與 inetd 守護(hù)進(jìn)程有關(guān)的后臺進(jìn)程信息。
kern -內(nèi)核信息,首先通過 klogd 傳遞。
lpr -與打印服務(wù)有關(guān)的信息。
mail -與電子郵件有關(guān)的信息
mark - syslog內(nèi)部功能用于生成時間戳
news -來自新聞服務(wù)器的信息
syslog -由 syslog 生成的信息
user -由用戶程序生成的信息
uucp -由 uucp 生成的信息
local0-local7 -與自定義程序使用

* 通配符代表除了 mark 以外的所有功能除mark為內(nèi)部使用外,還有security為一個舊的key定義,等同于auth,已經(jīng)不再建議使用。

2、level級別

level定義消息的緊急程度。按嚴(yán)重程度由高到低順序排列為: emerg -該系統(tǒng)不可用,等同panic
alert -需要立即被修改的條件
crit -阻止某些工具或子系統(tǒng)功能實現(xiàn)的錯誤條件
err -阻止工具或某些子系統(tǒng)部分功能實現(xiàn)的錯誤條件,等同error
warning -預(yù)警信息,等同warn
notice -具有重要性的普通條件
info -提供信息的消息
debug -不包含函數(shù)條件或問題的其他信息
none -沒有重要級,通常用于排錯

* 所有級別,除了none其中,panic、error、warn均為舊的標(biāo)識符,不再建議使用。
在定義level級別的時候,需要注意兩點: 1)優(yōu)先級是由應(yīng)用程序在編程的時候已經(jīng)決定的,除非修改源碼再編譯,否則不能改變消息的優(yōu)先級;

低的優(yōu)先級包含高優(yōu)先級,例如,為某個應(yīng)用程序定義info的日志導(dǎo)向,則涵蓋notice、warning、err、crit、alert、emerg等消息。(除非使用=號定義)

3、selector選擇條件

通過小數(shù)點符號“.”把facility和level連接在一起則成為selector(選擇條件)。
可以使用分號“;”同時定義多個選擇條件。也支持三個修飾符: * - 所有日志信息
= - 等于,即僅包含本優(yōu)先級的日志信息
! - 不等于,本優(yōu)先級日志信息除外

4、action動作

由前面選擇條件定義的日志信息,可執(zhí)行下面的動作: file-指定日志文件的絕對路徑
terminal 或 print -發(fā)送到串行或并行設(shè)備標(biāo)志符,例如/dev/ttyS2
@host -遠(yuǎn)程的日志服務(wù)器
username -發(fā)送信息本機(jī)的指定用戶信息窗口中,但該用戶必須已經(jīng)登陸到系統(tǒng)中
named pipe -發(fā)送到預(yù)先使用 mkfifo 命令來創(chuàng)建的 FIFO 文件的絕對路徑※注意,不能通過“|/var/xxx.sh”方式導(dǎo)向日志到其他腳本中處理。

5、舉例

例如: *.info;mail.none;news.none;authpriv.none;cron.none /var/log/messages
#把除郵件、新聞組、授權(quán)信息、計劃任務(wù)等外的所有通知性消息都寫入messages文件中。
mail,news.=info /var/adm/info
#把郵件、新聞組中僅通知性消息寫入info文件,其他信息不寫入。
mail.*;mail.!=info /var/adm/mail
#把郵件的除通知性消息外都寫入mail文件中。
mail.=info /dev/tty12
#僅把郵件的通知性消息發(fā)送到tty12終端設(shè)備
*.alert root,joey
#如果root和joey用戶已經(jīng)登陸到系統(tǒng),則把所有緊急信息通知他們
*.* @finlandia
#把所有信息都導(dǎo)向到finlandia主機(jī)(通過/etc/hosts或dns解析其IP地址)※注意:每條消息均會經(jīng)過所有規(guī)則的,并不是唯一匹配的。

也就是說,假設(shè)mail.=info信息通過上面范例中定義的規(guī)則時,/var/adm/info、/var/adm/mail、/dev/tty12,甚至finalandia主機(jī)都會收到相同的信息。這樣看上去比較煩瑣,但可以帶來的好處就是保證了信息的完整性,可供不同地方進(jìn)行分析。#p#

二、messages日志

首先說下我們最關(guān)注的系統(tǒng)/var/log/messages,這東東不僅是咱們服務(wù)器的系統(tǒng)日志,很多時候它也做了許多服務(wù)的日志,這也是它被稱為雜貨鋪的原因,值得重點關(guān)注,大家一般都喜歡用以下命令看最后十條日志

tail -n10 /var/log/messages

其實還可以將一段日志保存成文件,正用練下自己的awk、sed和grep水平;或者直接用vim來查看,這也是算是一種經(jīng)驗之談吧。我以前配置bind的主從復(fù)制,有時因為權(quán)限的原因報錯;這時可以在一臺報錯的服務(wù)器上用命令tail -f /var/log/messages實時查看服務(wù)器的變化情況,從中查找錯誤的蛛絲馬跡;事實證明,效果很好,而且用于lvs+keepalived的排錯效也不錯,其它事例依此類推。

三、secure的用法

/var/log/secure:記錄登入系統(tǒng)存取數(shù)據(jù)的文件,例如 pop3, ssh, telnet, ftp 等都會被記錄,我們可以利用此文件找出不安全的登陸IP。

四、記錄登陸者的數(shù)據(jù)

/var/log/wtmp:記錄登入者的訊息數(shù)據(jù),由于本文件已經(jīng)被編碼過(為二進(jìn)制文件),所以必須使用 last指令來取出文件的內(nèi)容,你用cat等命令直接查看此文件是不行的。

五、lastlog記錄系統(tǒng)時間

/var/log/lastlog : 記錄每個使用者最近簽入系統(tǒng)的時間, 因此當(dāng)使用者簽入時, 就會顯示其上次簽入的時間,您應(yīng)該注意一下這個時間, 若不是您上次簽入的時間, 表示您的帳號可能被人盜用了。 此檔可用 /usr/bin/lastlog 指令讀?。‵reebsd下為/usr/sbin/lastlogin)。

六、用dmesg查看啟動消息 

dmesg提供了一個簡單的方法查看系統(tǒng)啟動信息。當(dāng)Linux啟動的時候,內(nèi)核的信息被存入內(nèi)核ring緩存當(dāng)中,dmesg可以顯示緩存中的內(nèi)容。默認(rèn)情況下,dmesg打印內(nèi)容到屏幕上面,當(dāng)然你可以重定向輸出到一個文件。如果硬件損壞的話,在dmesg日志里是有顯示的,可用以下命令來查看dmesg | grep error

七、服務(wù)器的郵件日志

服務(wù)器的郵件為/var/log/messages,如果要用專業(yè)的日志分析工具來分析的話,我推薦用Awstats;由于公司的開發(fā)對郵件的要求比較低,所以我?guī)退麄兣渲玫木褪亲詈唵蔚膕endmail,有時看看郵件日志里的status狀態(tài)來判斷郵件到底有沒有正確發(fā)送;在配置Nagios服務(wù)器,我也習(xí)慣用此日志來判斷報警郵件到底有沒有發(fā)送,如果對自己的shell水平足夠自信,也可以寫腳本來收集郵件服務(wù)器的返回狀態(tài)等,但專業(yè)的事情,建議還是由專業(yè)的工具來做,特別是郵件負(fù)載比較大時,每天幾百萬條日志或上千萬條日志不是開玩笑的。

八、日志文件的專業(yè)工具

像系統(tǒng)的一些服務(wù),比如Apache、Nginx、Squid、還有mysql,都有自己的特定的日志文件,由于格式比較復(fù)雜,也推薦用專業(yè)工具,如Awstats、Cacti來分析,現(xiàn)在用cacti用得比較多是用它分析Nginx負(fù)載均衡器的一段時間的并發(fā)情況。#p#

九、輸出Iptables日志到一個指定的文件(logboy同學(xué)撰寫)

Iptables的man參考頁中提到: 我們可以使用Iptables在Linux內(nèi)核中建立, 維護(hù)和檢查IP包過濾規(guī)則表。幾個不同的表可能已經(jīng)創(chuàng)建, 每一個表包含了很多內(nèi)嵌的鏈, 也可能包含用戶自定義的鏈。Iptables默認(rèn)把日志信息輸出到/var/log/messages文件。不過一些情況下你可能需要修改日志輸出的位置。下面向大家介紹如何建立一個新的日志文件/var/log/iptables.log。通過修改或使用新的日志文件, 你可以創(chuàng)建更好的統(tǒng)計信息或者幫助你分析網(wǎng)絡(luò)攻擊信息。

(1). Iptables默認(rèn)的日志文件

例如, 如果你輸入下面的命令, 屏幕將顯示/var/log/messages文件中的Iptables日志信息:

# tail -f /var/log/messages

輸出:

Oct 4 00:44:28 debian gconfd (vivek-4435):
Resolved address "xml:readonly:/etc/gconf/gconf.xml.defaults"
to a read-only configuration source at position 2
Oct 4 01:14:19 debian kernel:
IN=ra0 OUT= MAC=00:17:9a:0a:f6:44:00:08:5c:00:00:01:08:00
SRC=200.142.84.36 DST=192.168.1.2
LEN=60 TOS=0x00 PREC=0x00 TTL=51 ID=18374
DF PROTO=TCP SPT=46040 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0 

(2).輸出Iptables日志信息到一個指定文件的方法

打開你的/etc/syslog.conf文件:

# vi /etc/syslog.conf

在文件末尾加入下面一行信息:

kern.warning /var/log/iptables.log

保存和關(guān)閉文件。

重新啟動Syslogd(如果你使用Debian/Ubuntu Linux):

# /etc/init.d/sysklogd restart

另外, 使用下面命令重新啟動Syslogd(如果你使用Red Hat/Cent OS/Fedora Core Linux):

# /etc/init.d/syslog restart現(xiàn)在確認(rèn)你的Iptables使用了log-level 4參數(shù)(前面有一個log-prefix標(biāo)志)。例如:

# DROP everything and Log it
iptables -A INPUT -j LOG –log-level 4
iptables -A INPUT -j DROP

舉一個例子, 丟棄和記錄所有來自IP地址65.55.11.2的連接信息到/var/log/iptables.log文件。

iptables -A INPUT -s 64.55.11.2 -m limit
limit 5/m --limit-burst 7 -j LOG
log-prefix ‘** HACKERS **’ --log-level 4
iptables -A INPUT -s 64.55.11.2 -j DROP 

命令解釋:

log-level 4: 記錄的級別. 級別4為警告(warning)。

log-prefix ‘*** TEXT ***’: 這里定義了在日志輸出信息前加上TEXT前綴。TEXT信息最長可以是29個字符, 這樣你就可以在記錄文件中方便找到相關(guān)的信息。

現(xiàn)在你可以通過/var/log/iptables.log文件參考Iptables的所有信息:

# tail -f /var/log/iptables.log

十、日志輪詢

再說下日志的輪詢,Linux的日志輪詢機(jī)制做得相當(dāng)好,當(dāng)然我們也可以通過配置/etc/logrotate.conf來修改它,有興趣的同學(xué)可參考鳥哥的文章,這里就不作詳細(xì)介紹了。

【51CTO.com獨(dú)家特稿,合作站點轉(zhuǎn)載請注明原文譯者和出處?!?/p>

【編輯推薦】

  1. 明明白白你的Linux服務(wù)器——網(wǎng)絡(luò)篇
  2. 明明白白你的Linux服務(wù)器——硬件篇
  3. Linux服務(wù)器性能優(yōu)于Windows 25%有理可依
  4. 善用腳本 讓你的Nagios記錄系統(tǒng)監(jiān)控日志(附vmstat詳解)
  5. Linux服務(wù)器如何擺平黑客攻擊
責(zé)任編輯:張浩 來源: 51CTO.com
相關(guān)推薦

2010-07-05 15:33:49

2010-06-29 14:38:14

Linux服務(wù)器

2010-09-09 09:52:03

Linux服務(wù)器

2010-08-25 09:09:58

2010-08-03 09:17:00

2011-04-27 17:05:39

2010-09-06 17:35:03

PPPOE配置

2020-02-10 19:42:01

CPIP 協(xié)議,

2011-11-04 16:49:26

Action BarAndroid

2010-10-15 10:01:19

無線網(wǎng)絡(luò)構(gòu)建

2010-10-08 15:05:00

無線路由設(shè)置

2012-02-20 21:59:08

無線路由設(shè)置

2010-08-06 10:00:05

負(fù)載均衡

2021-09-30 09:59:23

OSPF網(wǎng)絡(luò)協(xié)議網(wǎng)絡(luò)技術(shù)

2021-02-23 08:10:18

Nginx反向代理負(fù)載均衡器

2021-09-26 07:38:39

組合問題數(shù)據(jù)結(jié)構(gòu)算法

2013-05-23 11:16:28

大數(shù)據(jù)技術(shù)大數(shù)據(jù)AdTime

2010-01-13 17:07:21

防輻射機(jī)箱選購

2022-04-20 11:03:28

Linux內(nèi)存管理

2020-11-18 09:25:39

Docker
點贊
收藏

51CTO技術(shù)棧公眾號