日志對(duì)于安全來(lái)說(shuō),非常重要,它記錄了系統(tǒng)每天發(fā)生的各種各樣的事情,你可以通過(guò)他來(lái)檢查錯(cuò)誤發(fā)生的原因,或者受到攻擊時(shí)攻擊者留下的痕跡。日志主要的功能有:審計(jì)和監(jiān)測(cè)。他還可以實(shí)時(shí)的監(jiān)測(cè)系統(tǒng)狀態(tài),監(jiān)測(cè)和追蹤侵入者等等。正因?yàn)槿绱耍瑩崆僦缶铺氐膶⑺沓梢黄戎馗布?、網(wǎng)絡(luò)篇并列的文章,希望大家能從中學(xué)習(xí)到對(duì)自己有用的東西。
日志對(duì)于安全來(lái)說(shuō),非常重要,它記錄了系統(tǒng)每天發(fā)生的各種各樣的事情,你可以通過(guò)他來(lái)檢查錯(cuò)誤發(fā)生的原因,或者受到攻擊時(shí)攻擊者留下的痕跡。日志主要的功能有:審計(jì)和監(jiān)測(cè)。他還可以實(shí)時(shí)的監(jiān)測(cè)系統(tǒng)狀態(tài),監(jiān)測(cè)和追蹤侵入者等等。正因?yàn)槿绱耍瑩崆僦缶铺氐膶⑺沓梢黄戎馗布?、網(wǎng)絡(luò)篇并列的文章,希望大家能從中學(xué)習(xí)到對(duì)自己有用的東西。
一、配置syslog(gyl4802959同學(xué)撰寫(xiě))
目前,linux依舊使用syslogd作為日志監(jiān)控進(jìn)程,對(duì)其進(jìn)行必要的配置能減少很多麻煩,并且可更有效的從系統(tǒng)日志監(jiān)控到系統(tǒng)的狀態(tài)。理解并完善一個(gè)syslog的配置,對(duì)于系統(tǒng)管理員來(lái)說(shuō)顯得尤為重要。
/etc/syslog.conf根據(jù)如下的格式定義規(guī)則: facility.level action
設(shè)備.優(yōu)先級(jí) 動(dòng)作facility.level 字段也被稱(chēng)為seletor(選擇條件),選擇條件和動(dòng)作之間用空格或tab分割開(kāi)。
#號(hào)開(kāi)頭的是注釋?zhuān)瞻仔袝?huì)自動(dòng)跳過(guò)。
1、facility
facility定義日志消息的范圍,其可使用的key有: auth -由 pam_pwdb 報(bào)告的認(rèn)證活動(dòng)。
authpriv -包括特權(quán)信息如用戶(hù)名在內(nèi)的認(rèn)證活動(dòng)
cron -與 cron 和 at 有關(guān)的計(jì)劃任務(wù)信息。
daemon -與 inetd 守護(hù)進(jìn)程有關(guān)的后臺(tái)進(jìn)程信息。
kern -內(nèi)核信息,首先通過(guò) klogd 傳遞。
lpr -與打印服務(wù)有關(guān)的信息。
mail -與電子郵件有關(guān)的信息
mark - syslog內(nèi)部功能用于生成時(shí)間戳
news -來(lái)自新聞服務(wù)器的信息
syslog -由 syslog 生成的信息
user -由用戶(hù)程序生成的信息
uucp -由 uucp 生成的信息
local0-local7 -與自定義程序使用
* 通配符代表除了 mark 以外的所有功能除mark為內(nèi)部使用外,還有security為一個(gè)舊的key定義,等同于auth,已經(jīng)不再建議使用。
2、level級(jí)別
level定義消息的緊急程度。按嚴(yán)重程度由高到低順序排列為: emerg -該系統(tǒng)不可用,等同panic
alert -需要立即被修改的條件
crit -阻止某些工具或子系統(tǒng)功能實(shí)現(xiàn)的錯(cuò)誤條件
err -阻止工具或某些子系統(tǒng)部分功能實(shí)現(xiàn)的錯(cuò)誤條件,等同error
warning -預(yù)警信息,等同warn
notice -具有重要性的普通條件
info -提供信息的消息
debug -不包含函數(shù)條件或問(wèn)題的其他信息
none -沒(méi)有重要級(jí),通常用于排錯(cuò)
* 所有級(jí)別,除了none其中,panic、error、warn均為舊的標(biāo)識(shí)符,不再建議使用。
在定義level級(jí)別的時(shí)候,需要注意兩點(diǎn): 1)優(yōu)先級(jí)是由應(yīng)用程序在編程的時(shí)候已經(jīng)決定的,除非修改源碼再編譯,否則不能改變消息的優(yōu)先級(jí);
低的優(yōu)先級(jí)包含高優(yōu)先級(jí),例如,為某個(gè)應(yīng)用程序定義info的日志導(dǎo)向,則涵蓋notice、warning、err、crit、alert、emerg等消息。(除非使用=號(hào)定義)
3、selector選擇條件
通過(guò)小數(shù)點(diǎn)符號(hào)“.”把facility和level連接在一起則成為selector(選擇條件)。
可以使用分號(hào)“;”同時(shí)定義多個(gè)選擇條件。也支持三個(gè)修飾符: * - 所有日志信息
= - 等于,即僅包含本優(yōu)先級(jí)的日志信息
! - 不等于,本優(yōu)先級(jí)日志信息除外
4、action動(dòng)作
由前面選擇條件定義的日志信息,可執(zhí)行下面的動(dòng)作: file-指定日志文件的絕對(duì)路徑
terminal 或 print -發(fā)送到串行或并行設(shè)備標(biāo)志符,例如/dev/ttyS2
@host -遠(yuǎn)程的日志服務(wù)器
username -發(fā)送信息本機(jī)的指定用戶(hù)信息窗口中,但該用戶(hù)必須已經(jīng)登陸到系統(tǒng)中
named pipe -發(fā)送到預(yù)先使用 mkfifo 命令來(lái)創(chuàng)建的 FIFO 文件的絕對(duì)路徑※注意,不能通過(guò)“|/var/xxx.sh”方式導(dǎo)向日志到其他腳本中處理。
5、舉例
例如: *.info;mail.none;news.none;authpriv.none;cron.none /var/log/messages
#把除郵件、新聞組、授權(quán)信息、計(jì)劃任務(wù)等外的所有通知性消息都寫(xiě)入messages文件中。
mail,news.=info /var/adm/info
#把郵件、新聞組中僅通知性消息寫(xiě)入info文件,其他信息不寫(xiě)入。
mail.*;mail.!=info /var/adm/mail
#把郵件的除通知性消息外都寫(xiě)入mail文件中。
mail.=info /dev/tty12
#僅把郵件的通知性消息發(fā)送到tty12終端設(shè)備
*.alert root,joey
#如果root和joey用戶(hù)已經(jīng)登陸到系統(tǒng),則把所有緊急信息通知他們
*.* @finlandia
#把所有信息都導(dǎo)向到finlandia主機(jī)(通過(guò)/etc/hosts或dns解析其IP地址)※注意:每條消息均會(huì)經(jīng)過(guò)所有規(guī)則的,并不是唯一匹配的。
也就是說(shuō),假設(shè)mail.=info信息通過(guò)上面范例中定義的規(guī)則時(shí),/var/adm/info、/var/adm/mail、/dev/tty12,甚至finalandia主機(jī)都會(huì)收到相同的信息。這樣看上去比較煩瑣,但可以帶來(lái)的好處就是保證了信息的完整性,可供不同地方進(jìn)行分析。
二、messages日志
首先說(shuō)下我們最關(guān)注的系統(tǒng)/var/log/messages,這東東不僅是咱們服務(wù)器的系統(tǒng)日志,很多時(shí)候它也做了許多服務(wù)的日志,這也是它被稱(chēng)為雜貨鋪的原因,值得重點(diǎn)關(guān)注,大家一般都喜歡用以下命令看最后十條日志
tail -n10 /var/log/messages
其實(shí)還可以將一段日志保存成文件,正用練下自己的awk、sed和grep水平;或者直接用vim來(lái)查看,這也是算是一種經(jīng)驗(yàn)之談吧。我以前配置bind的主從復(fù)制,有時(shí)因?yàn)闄?quán)限的原因報(bào)錯(cuò);這時(shí)可以在一臺(tái)報(bào)錯(cuò)的服務(wù)器上用命令tail -f /var/log/messages實(shí)時(shí)查看服務(wù)器的變化情況,從中查找錯(cuò)誤的蛛絲馬跡;事實(shí)證明,效果很好,而且用于lvs+keepalived的排錯(cuò)效也不錯(cuò),其它事例依此類(lèi)推。
三、secure的用法
/var/log/secure:記錄登入系統(tǒng)存取數(shù)據(jù)的文件,例如 pop3, ssh, telnet, ftp 等都會(huì)被記錄,我們可以利用此文件找出不安全的登陸IP。
四、記錄登陸者的數(shù)據(jù)
/var/log/wtmp:記錄登入者的訊息數(shù)據(jù),由于本文件已經(jīng)被編碼過(guò)(為二進(jìn)制文件),所以必須使用 last指令來(lái)取出文件的內(nèi)容,你用cat等命令直接查看此文件是不行的。
五、lastlog記錄系統(tǒng)時(shí)間
/var/log/lastlog : 記錄每個(gè)使用者最近簽入系統(tǒng)的時(shí)間, 因此當(dāng)使用者簽入時(shí), 就會(huì)顯示其上次簽入的時(shí)間,您應(yīng)該注意一下這個(gè)時(shí)間, 若不是您上次簽入的時(shí)間, 表示您的帳號(hào)可能被人盜用了。 此檔可用 /usr/bin/lastlog 指令讀取(Freebsd下為/usr/sbin/lastlogin)。
六、用dmesg查看啟動(dòng)消息
dmesg提供了一個(gè)簡(jiǎn)單的方法查看系統(tǒng)啟動(dòng)信息。當(dāng)Linux啟動(dòng)的時(shí)候,內(nèi)核的信息被存入內(nèi)核ring緩存當(dāng)中,dmesg可以顯示緩存中的內(nèi)容。默認(rèn)情況下,dmesg打印內(nèi)容到屏幕上面,當(dāng)然你可以重定向輸出到一個(gè)文件。如果硬件損壞的話(huà),在dmesg日志里是有顯示的,可用以下命令來(lái)查看dmesg | grep error
七、服務(wù)器的郵件日志
服務(wù)器的郵件為/var/log/messages,如果要用專(zhuān)業(yè)的日志分析工具來(lái)分析的話(huà),我推薦用Awstats;由于公司的開(kāi)發(fā)對(duì)郵件的要求比較低,所以我?guī)退麄兣渲玫木褪亲詈?jiǎn)單的sendmail,有時(shí)看看郵件日志里的status狀態(tài)來(lái)判斷郵件到底有沒(méi)有正確發(fā)送;在配置Nagios服務(wù)器,我也習(xí)慣用此日志來(lái)判斷報(bào)警郵件到底有沒(méi)有發(fā)送,如果對(duì)自己的shell水平足夠自信,也可以寫(xiě)腳本來(lái)收集郵件服務(wù)器的返回狀態(tài)等,但專(zhuān)業(yè)的事情,建議還是由專(zhuān)業(yè)的工具來(lái)做,特別是郵件負(fù)載比較大時(shí),每天幾百萬(wàn)條日志或上千萬(wàn)條日志不是開(kāi)玩笑的。
八、日志文件的專(zhuān)業(yè)工具
像系統(tǒng)的一些服務(wù),比如Apache、Nginx、Squid、還有mysql,都有自己的特定的日志文件,由于格式比較復(fù)雜,也推薦用專(zhuān)業(yè)工具,如Awstats、Cacti來(lái)分析,現(xiàn)在用cacti用得比較多是用它分析Nginx負(fù)載均衡器的一段時(shí)間的并發(fā)情況。
九、輸出Iptables日志到一個(gè)指定的文件(logboy同學(xué)撰寫(xiě))
Iptables的man參考頁(yè)中提到: 我們可以使用Iptables在Linux內(nèi)核中建立, 維護(hù)和檢查IP包過(guò)濾規(guī)則表。幾個(gè)不同的表可能已經(jīng)創(chuàng)建, 每一個(gè)表包含了很多內(nèi)嵌的鏈, 也可能包含用戶(hù)自定義的鏈。Iptables默認(rèn)把日志信息輸出到/var/log/messages文件。不過(guò)一些情況下你可能需要修改日志輸出的位置。下面向大家介紹如何建立一個(gè)新的日志文件/var/log/iptables.log。通過(guò)修改或使用新的日志文件, 你可以創(chuàng)建更好的統(tǒng)計(jì)信息或者幫助你分析網(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 2Oct 4 01:14:19 debian kernel:IN=ra0 OUT= MAC=00:17:9a:0a:f6:44:00:08:5c:00:00:01:08:00SRC=200.142.84.36 DST=192.168.1.2LEN=60 TOS=0x00 PREC=0x00 TTL=51 ID=18374DF PROTO=TCP SPT=46040 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0
(2).輸出Iptables日志信息到一個(gè)指定文件的方法
打開(kāi)你的/etc/syslog.conf文件:
# vi /etc/syslog.conf
在文件末尾加入下面一行信息:
kern.warning /var/log/iptables.log
保存和關(guān)閉文件。
重新啟動(dòng)Syslogd(如果你使用Debian/Ubuntu Linux):
# /etc/init.d/sysklogd restart
另外, 使用下面命令重新啟動(dòng)Syslogd(如果你使用Red Hat/Cent OS/Fedora Core Linux):
# /etc/init.d/syslog restart現(xiàn)在確認(rèn)你的Iptables使用了log-level 4參數(shù)(前面有一個(gè)log-prefix標(biāo)志)。例如:
# DROP everything and Log it
iptables -A INPUT -j LOG –log-level 4
iptables -A INPUT -j DROP
舉一個(gè)例子, 丟棄和記錄所有來(lái)自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: 記錄的級(jí)別. 級(jí)別4為警告(warning)。
log-prefix ‘*** TEXT ***’: 這里定義了在日志輸出信息前加上TEXT前綴。TEXT信息最長(zhǎng)可以是29個(gè)字符, 這樣你就可以在記錄文件中方便找到相關(guān)的信息。
現(xiàn)在你可以通過(guò)/var/log/iptables.log文件參考Iptables的所有信息:
# tail -f /var/log/iptables.log
十、日志輪詢(xún)
再說(shuō)下日志的輪詢(xún),Linux的日志輪詢(xún)機(jī)制做得相當(dāng)好,當(dāng)然我們也可以通過(guò)配置/etc/logrotate.conf來(lái)修改它,有興趣的同學(xué)可參考鳥(niǎo)哥的文章,這里就不作詳細(xì)介紹了。
重慶中技互聯(lián)網(wǎng)信息咨詢(xún)有限公司
重慶網(wǎng)站建設(shè)事業(yè)部官方網(wǎng):www.tmsmall666.cn
電子商務(wù)建站事業(yè)部咨詢(xún)電話(huà):023-67742189
門(mén)戶(hù)網(wǎng)站品牌加盟推廣電話(huà):023-67742189
7*24小時(shí)服務(wù)電話(huà):023-67742189
媒體合作電話(huà):13883323406
投資合作電話(huà):13896068183
QQ及郵件地址:446515345@qq.com
企業(yè)網(wǎng)站建設(shè)解決方案 營(yíng)銷(xiāo)型網(wǎng)站建設(shè)解決方案 行業(yè)門(mén)戶(hù)網(wǎng)站建設(shè)解決方案 外貿(mào)網(wǎng)站解建設(shè)決方案 品牌形象網(wǎng)站建設(shè)解決方案 購(gòu)物商城網(wǎng)站建設(shè)解決方案 政府網(wǎng)站建設(shè)解決方案 手機(jī)網(wǎng)站建設(shè)解決方案 教育培訓(xùn)網(wǎng)站建設(shè)解決方案 珠寶高端奢飾品網(wǎng)站建設(shè)解決方案 房地產(chǎn)、地產(chǎn)項(xiàng)目網(wǎng)站建設(shè)解決方案 集團(tuán)、上市企業(yè)網(wǎng)站建設(shè)解決方案 數(shù)碼、電子產(chǎn)品網(wǎng)站建設(shè)解決方案 美容、化妝品行業(yè)網(wǎng)站建設(shè)解決方案
10年專(zhuān)業(yè)互聯(lián)網(wǎng)服務(wù)經(jīng)驗(yàn) 重慶最專(zhuān)業(yè)網(wǎng)站團(tuán)隊(duì) 資深行業(yè)分析策劃 B2C營(yíng)銷(xiāo)型網(wǎng)站建設(shè)領(lǐng)先者 最前沿視覺(jué)設(shè)計(jì)、研發(fā)能力 時(shí)刻最新技術(shù)領(lǐng)先研發(fā)能力 具有完備的項(xiàng)目管理 完善的售后服務(wù)體系 深厚的網(wǎng)絡(luò)運(yùn)營(yíng)經(jīng)驗(yàn)
中技互聯(lián)一直秉承專(zhuān)業(yè)、誠(chéng)信、服務(wù)、進(jìn)取的價(jià)值觀,堅(jiān)持優(yōu)秀的商業(yè)道德,以用戶(hù)最終價(jià)值為導(dǎo)向,向用戶(hù)提供優(yōu)質(zhì)產(chǎn)品和優(yōu)質(zhì)服務(wù),從而贏得了用戶(hù)的信賴(lài)。始終以不懈的努力、更高的目標(biāo)來(lái)要求自己。
主營(yíng)業(yè)務(wù):網(wǎng)站建設(shè) | 重慶網(wǎng)站建設(shè) | 重慶網(wǎng)站設(shè)計(jì) | 重慶網(wǎng)站制作 | 重慶網(wǎng)頁(yè)設(shè)計(jì) | 重慶網(wǎng)站開(kāi)發(fā)