了解最新公司動(dòng)態(tài)及行業(yè)資訊
在 Linux系統(tǒng)中,rsyslog 用于系統(tǒng)日志的記錄和管理,rsyslog 的主配置文件是 /etc/rsyslog.conf,同時(shí)在 /etc/rsyslog.d/ 目錄下可以放置自定義的配置文件。
規(guī)則用于指定日志消息的來(lái)源、類(lèi)型和存儲(chǔ)位置。規(guī)則的基本格式是:
設(shè)施.優(yōu)先級(jí) 動(dòng)作
設(shè)施:表示日志消息的來(lái)源,例如 auth(認(rèn)證相關(guān))、kern(內(nèi)核相關(guān))、user(用戶進(jìn)程相關(guān))、cron(計(jì)劃任務(wù)相關(guān))、daemon(守護(hù)進(jìn)程相關(guān))、local0 至 local7(八個(gè)設(shè)施是為用戶自定義用途預(yù)留的,可以根據(jù)需要定義特定的應(yīng)用場(chǎng)景)等
優(yōu)先級(jí):表示日志消息的嚴(yán)重程度,從低到高依次為 debug、info、notice、warning、err、crit、alert、emerg。
動(dòng)作:表示日志消息的處理方式,通常是指定存儲(chǔ)的文件路徑,或者把日志上傳到遠(yuǎn)程日志審計(jì)服務(wù)器上。
下面基于銀河麒麟桌面操作系統(tǒng)V10 (SP1)并結(jié)合實(shí)際目標(biāo),實(shí)戰(zhàn)演繹Linux日志管理最佳實(shí)踐案例。
目標(biāo)1:所有的用戶認(rèn)證相關(guān)活動(dòng),包括成功的登錄嘗試、失敗的登錄嘗試以及其他授權(quán)操作等,記錄到本地日志文件并上傳到遠(yuǎn)程日志審計(jì)系統(tǒng)。
目標(biāo)2:所用用戶在Linux終端中執(zhí)行的命令,記錄到自定義的本地日志文件并上傳到遠(yuǎn)程日志審計(jì)系統(tǒng)。
銀河麒麟桌面系統(tǒng)默認(rèn)已安裝syslog服務(wù),日志過(guò)濾規(guī)則默認(rèn)存儲(chǔ)在/etc/rsyslog.d/ 目錄下。
auth和authpriv設(shè)施默認(rèn)已定義在默認(rèn)的配置文件中,如下圖所示。
為了把它們產(chǎn)生的日志上傳到遠(yuǎn)程日志審計(jì)系統(tǒng),需要在該配置文件添加以下內(nèi)容。
auth,authpriv.* @192.168.1.10:514
其中,@指使用UDP的方式,192.168.1.10指遠(yuǎn)程日志審計(jì)系統(tǒng),514指遠(yuǎn)程日志審計(jì)系統(tǒng)監(jiān)聽(tīng)端口;
Tips:@@指使用TCP方式
完成配置文件的修改,重啟syslog服務(wù)。
sudo systemctl restart syslog
第1步:編輯/etc/bash.bashrc,在文件末尾添加以下內(nèi)容,如下圖所示;
export PROMPT_COMMAND=RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"
第2步:root用戶權(quán)限下執(zhí)行下列命令,使配置生效
root@Pradmin-pc:~# source /etc/bash.bashrc
root@Pradmin-pc:~#
第3步:創(chuàng)建日志文件bash01.log并更改文件所屬用戶及所屬組
sudo touch /var/log/bash01.log
sudo chown syslog:adm /var/log/bash01.log
第4步:創(chuàng)建自定義的配置文件bash01.conf并重啟syslog服務(wù)
local6.debug /var/log/bash01.log
local6.debug @192.168.72.10:514
第5步:查看本地日志記錄文件是否記錄了相應(yīng)的日志
第6步:Logrotate工具定義bash01.log日志文件的輪轉(zhuǎn)規(guī)則
定義日志文件的輪轉(zhuǎn)規(guī)則可有效地管理和維護(hù)系統(tǒng)日志文件,防止它們無(wú)限增長(zhǎng)而導(dǎo)致磁盤(pán)空間耗盡。同時(shí),定期地壓縮舊日志文件也能節(jié)省存儲(chǔ)空間。
針對(duì)syslog服務(wù),銀河麒麟桌面系統(tǒng)默認(rèn)日志文件的輪轉(zhuǎn)規(guī)則如下圖所示;
日志文件的輪轉(zhuǎn)規(guī)則默認(rèn)保存在/etc/logrotate.d目錄中,其中rsyslog配置文件是針對(duì)syslog服務(wù)的輪轉(zhuǎn)規(guī)則。
編輯rsyslog文件添加/var/log/bash01.log并重啟logrotate服務(wù),如下圖所示;
sudo systemctl restart logrotate
以上總結(jié),希望各位小伙伴有所收獲,不足之處,歡迎各位小伙伴留言指正。
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)