Linux系统——日志文件

日志文件的分类

(1)内核及系统日志

由系统服务rsyslog管理,根据去主配置文件/etc/rsyslog.conf中的设置决定将内核消息及各种系统程序消息记录到什么位置。

/etc/rsyslog.conf配置文件中,常见的配置格式:

“.” 你后面等级要高(包含该等级)的都记录 eg:“*.info”

“.=” 只记录该等级 eg:“.=debug”

“!” 除了该等级都记录 eg:“!info”

“-” 当有记录信息需要记录时,现存到缓存中,到一定大小时一次性写入,以减少对磁盘读写性能的占用。 eg:“-/var/log/maillog”

(2)用户日志

用于记录Linux系统用户登录及退出系统的相关信息,包括用户名、登陆的终端、登录时间、来源主机、正在使用的进程操作等

(3)程序日志

用于记录本程序运行过程中的各种事件信息。

日志消息的级别

数字等级越小,优先级越高,消息越重要

Linux系统——日志文件

日志文件分析

(1)内核及大多数系统消息

存放位置:/var/log/message

内容解释:

时间标签:消息发出的日期及时间

主机名:生成消息的应用程序的名称

子系统名称:发出消息的应用程序的名称

消息:消息的具体内容

(2)用户日志

存放位置:/var/log/wtmp,/var/log/btmp,/var/log/lastlog

查询命令:users、who、w、last、lastlog、lastb

/var/log/wtmp,一个用户每次登录进入和退出时间的永久记录

/var/log/btmp,记录失败的记录

/var/run/utmp,记录当前登录的每个用户

users命令: 简单输出当前用户的用户名,每一个显示的用户名对应一个会话

who命令:报告当前登录到系统中的每个用户的信息。默认输出包括用户名、终端类型、登录日期及远程主机

w命令:显示当前操作系统中的每个用户及其远程运行的进程信息

last 命令:用于查询成功登录到系统的用户记录,最近的登录情况在最前面

  -a  把从何处登入系统的主机名称或IP地址,显示在最后一行。

  -d  将IP地址转换成主机名称。

  -f  指定记录文件。

  -n 或-  设置列出名单的显示列数。

  -R  不显示登入系统的主机名称或IP地址。

  -x  显示系统关机,重新开机,以及执行等级的改变等信息

lastlog命令:用于显示系统中所有用最近一次登录信息

lastb命令:用于显示用户错误的登录列表,此指令可以发现系统的登录异常

程序日志

存放位置:不固定,一般在/var/log下的子目录中

日志文件分析注意事项:

用户在非常规的时间登录,或者用户登录系统的IP地址和以往不一样的;

用户登录失败的日志记录,尤其是那些一再连续尝试进入失败的日志记录;

非法使用或不正当使用超级用户权限;

无故或者非法启动各项网络服务的记录;

不正常的日志记录,如日志残缺不全,或者是诸如wtmp这样的日志文件无故缺少了中间的记录文件。

日志文件的保护

# chattr +a 增加权限

# chattr +a -R 递归式增加a权限