亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

何謂 Syslogd

系統(tǒng) 2313 0

Syslogd的運(yùn)作流程

為了能讓系統(tǒng)管理人員,清楚掌握系統(tǒng)的運(yùn)作狀況,大多數(shù)的作業(yè)系統(tǒng)都會有日誌(Log)的功能,在 RHEL 3.0 系統(tǒng)中是由 sysklogd-1.4.1-12.i386.rpm 這個(gè)套件來負(fù)責(zé)此一功能的,在 Syslogd 系統(tǒng)中共有兩個(gè) daemon 分別為 Syslogd 及 Klogd , 如上圖所示 , Kernel 所產(chǎn)生的 Log 將會交由 Klogd 來處理,Klogd 在交給 Syslogd 處理 而 AP 的部分可能會有兩種做法 , 一是將 Log 交由 Syslogd 處理 , 二是 AP 自行處理 如果是 AP 自行處理 , 那麼 AP 將自行將 Log 資訊儲存於 /var/log/ 目錄下的某個(gè)檔案 , 如果是交理 Syslogd 來處理 那麼 Syslogd 將會依照 /etc/syslog.conf 的內(nèi)容來決定那些資訊該儲存於 /var/log/ 目錄下的那一個(gè)檔案。

Syslogd的基本組態(tài)

Syslogd 有兩個(gè)設(shè)定檔 ,分別是 /etc/sysconfig/syslog及 /etc/syslog.conf,如下所示:

/etc/sysconfig/syslog

# Options to syslogd
# -m 0 disables 'MARK' messages.
# -r enables logging from remote machines
# -x disables DNS lookups on messages recieved with -r
# See syslogd(8) for more details
SYSLOGD_OPTIONS="-m 0"


# Options to klogd
# -2 prints all kernel oops messages twice; once for klogd to decode, and
# once for processing with 'ksymoops'
# -x disables all klogd processing of oops messages entirely
# See klogd(8) for more details
KLOGD_OPTIONS="-x"

在一般的使用下 ,鮮少需要更動這個(gè)檔案,除非有特殊的需求。

/etc/syslog.conf

# Log all kernel messages to the console.
# Logging much else clutters up the screen.

#kern.* /dev/console

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!

*.info;mail.none;authpriv.none;cron.none /var/log/messages

# The authpriv file has restricted access.

authpriv.* /var/log/secure

# Log all the mail messages in one place.

mail.* /var/log/maillog

# Log cron stuff

cron.* /var/log/cron

# Everybody gets emergency messages

*.emerg *

# Save news errors of level crit and higher in a special file.

uucp,news.crit /var/log/spooler

# Save boot messages also to boot.log

local7.* /var/log/boot.log

在這個(gè)設(shè)定檔中 , 其語法如下:

類型.記錄等級 處理方式

類型 可分為: auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security (same as auth), syslog, user, uucp 及 local0 local7,其中 local0 ~local7為使用者自訂類型 ,也可以使用 * 號來代表所有的類型。
「記錄等級」 可分為: debug, info, notice, warning, warn (same as warning), err, error (same as err), crit, alert, emerg, panic (same as emerg),以上各等級所記錄的資訊,由左至右遞減,但系統(tǒng)的緊急程度,由右至左遞減,也可以使用 none 表示全部不要。
「處理方式」 可分為: 存入檔案、終端機(jī)視窗、傳給線上的使用者或者傳遞至另外的Linux主機(jī)。

前端的 AP 可以自行定義其產(chǎn)生 Log 類型 「記錄等級」,而 /etc/syslog.conf 檔案內(nèi)則定義著,前端 AP 傳來的 Log 資訊其 類型 「記錄等級」 是什麼 ,再決定要儲存於何檔案內(nèi)。

範(fàn)例

*.info ; mail.none ; authpriv.none ; cron.none /var/log/messages

*.info :其中的 * 表示要記錄所有的「大項(xiàng)」, 而 . info表示要記錄 >= info 等級的所有資訊。

mail.none:其中的 mail 表示要記錄 mail 該項(xiàng)記錄,但後面的 .none 表示所有等級的資訊都不要。

所以這一行的意思是說:除了mail、authpriv及cron大項(xiàng)的資訊不需要, 其餘的類型中,大於等於info等級的資訊都要記錄到 /var/log/message這個(gè)檔案內(nèi) 。

PS:請注意「類型」及「等級」之間的連結(jié)符號,共可分為 . .= .=! .* 這四種, 其意義如下:

. 代表 >= 的意思

.= 代表 = 的意思

.=! 代表 <> 的意思

.* 代表所有的意思

Log檔內(nèi)的儲存格式

Syslogd 將系統(tǒng)資訊儲存於檔案 ,其檔案內(nèi)的格式如下

Sep 19 23:43:28 mail sshd[947 ] : Accepted password for root from 192.168.18.1 port 3287

其格式共分為四個(gè)欄位 ,分別如下

Sep 19 23:43:28 記錄的時(shí)間
mail 產(chǎn)生此 Log 的主機(jī)名稱
sshd[947 ] 產(chǎn)生此 Log 的應(yīng)用程式名稱
Accepted password for root from 192.168.18.1 port 3287 此一 Log 的內(nèi)容

使用者自定Log檔內(nèi)容

由於 Syslogd 會將不同應(yīng)用程式所產(chǎn)生的 log ,置於相同一個(gè)檔案內(nèi) (如: /var/log/message 就集合了各種不同的 log) ,如果我們希望將某一個(gè)應(yīng)用程式的 log, 獨(dú)立存放於一個(gè)檔案內(nèi),又該如何指定呢

一般應(yīng)用程式的設(shè)定檔,都可以指定 Log 輸出的 「類型」 ,以 sshd 為例,sshd 的設(shè)定檔為 /etc/ssh/sshd_config,其內(nèi)容有一行為 「SyslogFacility AUTHP RIV」 ,表示 sshd 所產(chǎn)生的 log 將歸類為 AUTHPRIV 的類型,而 /etc/syslog.conf 檔案內(nèi)指定將 AUTHPRIV 類型的資訊記錄於 /var/log/secure , 因此在預(yù)設(shè)定狀況下,sshd 所產(chǎn)生的 log 就存在於 /etc/log/secure內(nèi)。

我們可以試著將 /etc/ssh/sshd_config 內(nèi)的 「SyslogFacility AUTHPRIV」改為 「SyslogFacility local0」 ,也就是將 log 的類型改為 local0,並在 /etc/syslog.conf 檔案內(nèi)加入一行「 local0.* /var/log/sshd」,接著請重新啟動 sshd 及 syslogd ,並試著使用 ssh 於遠(yuǎn)端登入,此時(shí) /var/log/ 內(nèi)應(yīng)該就會出現(xiàn) sshd 這個(gè) log 檔了。

組態(tài)Log Server及Log Client

如果 Server 眾多時(shí) ,要管理分散於各地的 Log 也是一件苦差事,所幸 Syslog 系統(tǒng)本身就有 Client Server 的架構(gòu),只要經(jīng)過簡單的組態(tài),即可架構(gòu)出 Log Server ,並將分散於各地的 Log 回存於 Log Server 之上,接下來就為各位示範(fàn) Log Server 及 Log Client 的組態(tài)。

Log Server

請修放 /etc/sysconfig/syslog 檔案,並將 「SYSLOGD_OPTIONS="-m 0"」改為「SYSLOGD_OPTIONS="-r -m 0"」,然後重新啟動 syslog 服務(wù), 如果 Log Server 有使用防火牆 ,那麼請記得將 udp 的 514 port 打開。

Log Client

請修改 /etc/syslog.conf , 例如原本存於本機(jī)內(nèi) /var/log/secure 的資訊 ,要傳回 Log Server 內(nèi)存放,那麼請修改如下:

修改前:authpriv.* /var/log/secure 修改後:authpriv.* @192.168.1.254

其中 @192.168.1.254 為 Log Server 的 IP, 接著 Log Client 主機(jī)上,原本存於 /var/log/secure 檔案內(nèi)的資訊,將會傳回給 Log Server ,而 Log Server 也將是依照 Log 的「類型」,將 log 資訊存放於 /var/log 內(nèi)的某一個(gè)檔案。

也許你會有個(gè)疑問 ,如果有 10 個(gè) Log Client,那 10 個(gè) Log Client 的資訊都擠在 Log Server 的某一個(gè)檔案之中,不是更難管理嗎?

事實(shí)上一點(diǎn)也不會難以管理,別忘了 Log 格式中的第二個(gè)欄位為「產(chǎn)生此 Log 的主機(jī)名稱」,因此我們只要使用 grep 指令,並透過 hostname 來搜尋,即可快速分離各 Log Client 的 Log 資訊了。

何謂 Syslogd


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一级中文字幕 | 7777精品久久久大香线蕉 | 免费一级淫片 | 99久久这里只精品麻豆 | 麻豆国内精品久久久久久 | 免费一级特黄3大片视频 | 久久综合综合久久 | 伊人伊人影院 | 亚洲国产综合专区在线播一一 | 日韩欧美高清视频 | 国产一区二区三区视频 | 99热这里只有精品久久免费 | 精品一区二区在线欧美日韩 | 欧美一级毛片免费播放器 | 国产三级精品三级男人的天堂 | 亚洲精品国产精品乱码视色 | 亚洲免费在线播放 | youjizz欧美粗又大中国 | a视频在线播放 | 亚洲精品一区二区伦理 | 青青青免费在线视频 | 久操伊人 | 日本欧美一区二区三区乱码 | 日日干夜夜操视频 | 久久麻豆视频 | 国产亚洲一区二区三区在线 | 国产精品久久久久久久久夜色 | 久久99国产精品久久欧美 | 国产精品亚洲欧美大片在线看 | 国产一区二区三区久久精品小说 | 污夜影院| 国产不卡视频在线 | 国产成人精品久久亚洲高清不卡 | 久久精品啪啪嗷嗷叫 | α毛片 | 精品欧美一区二区三区四区 | 久久99热这里只有精品国产 | 久久99精品久久久久久臀蜜桃 | 亚洲伦理一二三四 | 一区二区三区日韩 | 国内自拍一二三四2021 |