首先简单介绍一下Centos中记录登陆信息的日志文件。
有关当前登录用户的信息记录在文件utmp中;登录进入和退出纪录在文件wtmp中;最后一次登录文件可以用lastlog命令察看。
数据交换、关机和重起也记录在wtmp文件中。所有的纪录都包含时间戳。
每次有一个用户登录时,login程序在文件lastlog中察看用户的UID。如果找到了,则把用户上次登录、退出时间和主机名写到标准输出中,然后login程序在lastlog中纪录新的登录时间。
在新的lastlog纪录写入后,utmp文件打开并插入用户的utmp纪录。该纪录一直用到用户登录退出时删除。utmp文件被各种命令文件使用,包括who、w、users和finger。
下一步,login程序打开文件wtmp附加用户的utmp纪录。当用户登录退出时,具有更新时间戳的同一utmp纪录附加到文件中。wtmp文件被程序last和ac使用。
wtmp和utmp文件都是二进制文件,用户需要使用who、w、users、last和ac来使用这两个文件包含的信息。
下面来说如何查看Centos用户登陆日志。
1.who:who命令查询utmp文件并报告当前登录的每个用户。Who的缺省输出包括用户名、终端类型、登录日期及远程主机。例如:who(回车)显示
root pts/0 2014-03-04 10:03 (218.2.11.178)
2.如果指明了wtmp文件名,则who命令查询以前所有的登陆纪录。使用命令who /var/log/wtmp查看所有登陆记录,结果如下:
lxy ftpd5946 2013-01-09 16:48 (218.2.11.178)
ipfangwen ftpd6036 2013-01-09 16:49 (218.2.11.178)
zhaiken ftpd6064 2013-01-09 16:50 (218.2.11.178)
beifen ftpd6065 2013-01-09 16:50 (218.2.11.178)
root pts/0 2013-01-09 17:27 (218.2.11.178)
lxy ftpd9472 2013-01-09 17:30 (218.2.11.178)
lxy ftpd9482 2013-01-09 17:31 (218.2.11.178)
root pts/0 2013-01-11 12:58 (218.2.11.178)
dy.lxy.me ftpd9801 2013-01-25 16:15 (218.2.11.178)
3.last:last命令往回搜索wtmp来显示自从文件第一次创建以来登录过的用户。例如:
root pts/0 218.2.11.178 Tue Mar 4 10:03 still logged in
root pts/0 218.2.11.178 Wed Feb 26 15:34 - 15:43 (00:09)
lxy ftpd18086 218.2.11.178 Wed Oct 9 17:14 - 17:16 (00:02)
root pts/0 218.2.11.178 Tue Oct 8 16:54 - 17:50 (00:55)