一、系统日志概述
1.日志的用途
系统和程序的“日记本”
−记录系统、程序运行中发生的各种事件
−通过查看日志,了解及排除故障
−信息安全控制的“依据”
2.Linux日志的种类
内核及系统日志
−由系统服务rsyslog统一管理,格式相似
用户日志
−记录用户登录及退出系统的事件,通常为二进制数据
程序日志
−由各种服务/程序独立管理,格式不统一
−比如:httpd网站服务的access_log、error_log
3.内核及系统日志文件
内核及系统日志
−采用文本格式进行记录
二、内核及系统日志分析
1.分析方法概览
通用分析工具
−tail、less、grep等文本浏览/检索命令
−awk、sed等格式化过滤工具
专用分析工具
−Webmin系统管理套件
−Webalizer、AWStats等日志统计套件
2.使用tailf跟踪日志变化
跟踪新增的日志消息
−使用tailf工具(或者tail-f)
−当被跟踪文件末尾增加新内容时,会及时显示出来
3.日志记录的组成
典型的消息记录
−时间标签主机名程序名消息内容
[root@hadoop ~]# tail /var/log/messages
三、用户日志分析
1.常见的用户日志文件
采用二进制的Data 格式
−无法用普通文本阅读工具来分析
2.用户日志分析
users、who、w 命令
−查看已登录的用户信息,详细度不同
last、lastb命令
−查看最近登录成功/失败的用户信息
[root@hadoop ~]# last -2 //最近两条登入记录
root pts/0 192.168.17.1 Sat Apr 30 16:28 still logged in
root pts/0 192.168.17.1 Fri Apr 29 11:48 - 03:26 (15:38) wtmp begins Tue Nov 16 19:35:47 2021
[root@hadoop ~]# lastb -2 //最近两条失败登录事件btmp begins Mon Aug 15 21:39:01 2022
四、rsyslog日志服务
1.关于rsyslog服务
Linux日志消息主要由rsyslog记录
−软件包:rsyslog-5.8.10-8
−主要程序:/sbin/rsyslogd
−配置文件:/etc/rsyslog.conf
[root@hadoop ~]# grep -vE '^#|^$' /etc/rsyslog.conf
$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imklog # provides kernel logging support (previously done by rklogd)
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$IncludeConfig /etc/rsyslog.d/*.conf
*.info;mail.none;authpriv.none;cron.none /var/log/messages
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.*
2.日志消息优先级
根据重要程度分8个优先级
−数值越小,事件越紧急/重要、优先级越高
[root@hadoop ~]# man 2 syslog | grep 'KERN_'