syslog.conf

 日誌文件由系統日誌和內核日誌監控程序syslogd 與klogd 控制, 在/etc/syslog.conf 文件中配置這兩個監控程序默認活動。 

日誌文件按/etc/syslog.conf 配置文件中的描述進行組織。下圖是/etc/syslog.conf 文件的內容:
[root@localhost ~]# cat /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
 
syslog.conf 行的基本語法是: 
[ 消息類型]     [ 處理方案] 
注意:中間的分隔符必須是Tab 字符!
消息類型是由" 消息來源" 和" 緊急程度" 構成,中間用點號連接。例如上圖中,news.crit 表示來自news 的“ 關鍵” 狀況。在這裏,news 是消息來源,crit 代表關鍵狀況。通配符* 可以代表一切消息來源。 
說明:
第一條語句*.info ,將info 級以上(notice,warning,err,crit,alert 與emerg )的所有消息發送到相應日誌文件。
日誌文件類別(按重要程度分類)日誌文件可以分成八大類,下面按重要性從大到下列出:
emerg  emergency , 緊急
alert    ,          警報
crit  critical ,   關鍵
errerror ,          錯誤
warning             警告
notice               通知
info                信息
debug               調試
-------------------------------------------------------
簡單列一下消息來源:
auth        認證系統,如login 或su ,即詢問用戶名和口令
cron        系統執行定時任務時發出的信息
daemon        某些系統的守護程序的 syslog ,如由in.ftpd 產生的log
kern        內核的信息
lpr        打印機的信息
mail        處理郵件的守護進程發出的信息
mark        定時發送消息的時標程序
news        新聞組的守護進程的信息
user        本地用戶的應用程序的信息
uucp        uucp 子系統的信息
local0~local7   系統預留
*          表示所有可能的信息來源
----------------------------------------------------------
處理方案
" 處理方案" 選項可以對日誌進行處理。可以把它存入硬盤,轉發到另一臺機器或顯示在管理員的終端上。
處理方案一覽:
文件名  寫入某個文件,要注意絕對路徑。 
@ 主機名 轉發給另外一臺主機的syslogd 程序。
@IP 地址 同上,只是用IP 地址標識而已。
/dev/console 發送到本地機器屏幕上。
* 發送到所有用戶的終端上。 
| 程序 通過管道轉發給某個程序。
例如:
kern.emerg   /dev/console( 一旦發生內核的緊急狀況,立刻把信息顯示在控制檯上) 
說明: 
如果想修改syslogd 的記錄文件,首先你必須殺掉syslogd 進程,在修改完畢後再啓動syslogd 。***者進入系統後通常立刻修改系統日誌,因 此作爲網管你應該用一臺機器專門處理日誌信息,其他機器的日誌自動轉發到它上面,這樣日誌信息一旦產生就立刻被轉移,這樣就可以正確記錄***者的行爲。
將日誌文件記錄到遠程主機 。
說到這遠程主機就是我們本文要配置的syslog 服務器。
----------------------------------------------------------------
2.syslog 服務器配置實踐步驟
例如: 10.0.0.1 爲syslog 服務器     10.0.0.2 爲客戶機 
步驟: 1. 服務端配置 
vi /etc/sysconfig/syslog       
      sysLOGD_OPTIONS = “-r –m 0”   ## -r 意思是接受遠程的日誌 
    重起syslog 服務 /etc/rc.d/init.d/syslog   restart 
    2. 客戶端配置 
      vi /etc/syslog.conf 
       在消息去向處添加 @10.0.0.1 
例如:*.info;mail.none;authpriv.none;cron.none @10.0.0.1
       存盤退出重起服務 
      /etc/rc.d/init.d/syslog restart 
    ( 知識點:直接查看日誌尾部:   tail   /var/log/messages 或者tail /var/log/boot 這樣就可以看到syslog 重起) 
--------------------------------------------------------------------
注意:日誌服務使用的端口是:514/udp syslog 服務器應該打開這個端口
syslog 日誌服務器端不能根據源地址過濾,爲了防止外網向日志服務器寫垃圾信息要在網絡拓撲中解決,網關上做限制外網訪問514 端口。
如果服務器比較多的話,這樣形成的日誌比較大,要做好日誌的分析
------------------------------自己補充內容----------------------------
 日誌自動壓縮回滾: 
在freebsd的newsyslog.conf加入
日誌文件    640  3    *    @T00  JC    進程路徑
 
在linux中編輯
 
 
 
 
 
 
/etc/logrotate.d/slockd,內容爲:
 
/var/log/slockd.log {
      daily
      notifempty
      missingok
      rotate 5
      compress
      create 644 root root
      sharedscripts
}
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章