智传网优云课堂,专注分享IT技术
与IT技术爱好者一起共同学习进步

Linux查看系统登录日志记录

1. last命令简介

该命令用来列出目前与过去登录系统的用户相关信息。原文描述说明:show listing of last logged in users

2. last命令文件位置

[root@zcwyou ~]# which last

/usr/bin/last

3. last命令原理

 执行last指令时,它会读取位于/var/log目录下名称为wtmp的文件,并把该文件记录的登录系统的用户名单全部显示出来。默认是显示wtmp的记录,btmp能显示的更详细,可以显示远程登录,例如ssh登录。

注:
utmp文件中保存的是当前正在本系统中的用户的信息。
wtmp文件中保存的是登录过本系统的用户的信息。

4. last默认输出

 显示部分结果

[root@zcwyou ~]# last

root pts/0 123.1.1.1 Wed Nov 28 09:00 still logged in
root pts/3 1.1.1.1 Tue Nov 27 22:05 – 00:25 (02:19)
root pts/0 2.3.3.3 Tue Nov 27 21:56 – 00:25 (02:28)
root pts/2 192.168.1.100 Tue Nov 27 17:21 still logged in
root pts/2 172.16.8.8 Tue Nov 27 16:43 – 16:43 (00:00)
root pts/0 9.9.9.9 Tue Nov 27 16:15 – 20:00 (03:45)
root pts/1 10.10.10.10 Tue Nov 27 14:49 still logged in
root pts/1 192.168.88.3 Tue Nov 27 14:12 – 14:49 (00:37)
root pts/0 4.4.4.20 Tue Nov 27 14:11 – 16:09 (01:58)
reboot system boot 4.18.9-1.el7.elr Tue Nov 27 14:09 – 09:07 (18:57)

last命令默认输出

解释输出结果:

  • 第一列:登录系统时使用的用户名
  • 第二列:终端位置。pts/0 (伪终端) 意味着从诸如SSH或telnet的远程连接的用户.tty (teletypewriter) 意味着直接连接到计算机或者本地连接的用户
  • 第三列:登录ip或者内核 。如果你看见:0.0或者什么都没有,这意味着用户通过本地终端连接。除了重启活动,内核版本会显示在状态中。
  • 第四列:登录开始时间
  • 第五列:结束登录时间(still login in表示仍在登录,down表示直到正常关机 crash表示直到强制关机)
  • 第六列:登录持续的时间

补充:正常命令重启显示为down,而电源强制重启为crash

5. last命令选项

last [-adRx][-f <记录文件位置>][-n <显示列数>][帐号名称…][终端机编号…] 
-a 登录ip或者内核 显示在最后一列,即上文提到的第三列。
-d 将IP地址转换成主机名称,显示过程慢,原因是需要DNS反向解析。
-f <记录文件位置> 默认位置为/var/log/wtmp
-n <显示行数>或-<显示行数> 指定输出的记录行,比如last -1或者last -n 1
-R 不显示登入系统的主机名称或IP地址。
-x 显示系统关机,重新开机,以及执行等级的改变等信息。
-i 显示特定ip登录的情况
-t  查询某个时间之前的登录信息。时间格式:YYYYMMDDHHMMSS,比如last -t 20181004121210

6. 常用案例

6.1 显示最近10个登录活动

[root@zcwyou ~]# last  -n 10

或者

[root@zcwyou ~]# last -10

Linux显示最近10个登录活动

6.2 指定日志文件的位置并仅显示最近10个登录活动

显示最近10个成功登录或者尝试登录的记录:

[root@zcwyou ~]# last -10 -f /var/log/btmp

root ssh:notty 40.87.124.33 Wed Nov 28 09:27 gone – no logout
ftpuser ssh:notty 202.191.56.246 Wed Nov 28 08:52 – 09:27 (00:35)
ftpuser ssh:notty 202.191.56.246 Wed Nov 28 08:52 – 08:52 (00:00)
sybase ssh:notty 87-206-19-214.dy Wed Nov 28 08:45 – 08:52 (00:07)
sybase ssh:notty 87-206-19-214.dy Wed Nov 28 08:45 – 08:45 (00:00)
root ssh:notty 40.87.124.33 Wed Nov 28 08:42 – 08:45 (00:02)
root ssh:notty 194.36.173.21 Wed Nov 28 08:36 – 08:42 (00:06)
root ssh:notty 194.36.173.21 Wed Nov 28 08:36 – 08:36 (00:00)
root ssh:notty 194.36.173.21 Wed Nov 28 08:36 – 08:36 (00:00)
telnet ssh:notty 194.36.173.21 Wed Nov 28 08:36 – 08:36 (00:00)

从输出上可以看出,绝大部分的尝试登录的IP都位于境外,即肉鸡控制端,所以挂在公网上的设备登录密码必须复杂。

Linux显示最近10个登录动作

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

[root@zcwyou ~]# last -x

root pts/0 10.1.1.1 Wed Nov 28 09:00 still logged in
root pts/3 172.16.21.1 Tue Nov 27 22:05 – 00:25 (02:19)
root pts/0 1.1.1.1 Tue Nov 27 21:56 – 00:25 (02:28)
root pts/2 2.2.2.2 Tue Nov 27 17:21 still logged in
root pts/2 192.168.1.100 Tue Nov 27 16:43 – 16:43 (00:00)
root pts/0 44.41.1.1 Tue Nov 27 16:15 – 20:00 (03:45)
root pts/1 3.3.3.3 Tue Nov 27 14:49 still logged in
root pts/1 8.8.8.8 Tue Nov 27 14:12 – 14:49 (00:37)
root pts/0 6.6.6.6 Tue Nov 27 14:11 – 16:09 (01:58)
runlevel (to lvl 3) 4.18.9-1.el7.elr Tue Nov 27 14:10 – 09:32 (19:22)
reboot system boot 4.18.9-1.el7.elr Tue Nov 27 14:09 – 09:32 (19:22)
shutdown system down 4.18.9-1.el7.elr Tue Nov 27 14:09 – 14:09 (00:00)

Linux显示系统级日志

6.4 查询指定日期之前的登录记录

查询2018年11月24日12时12分12秒之前的登录记录

[root@zcwyou ~]# last -t 20181124121212

root pts/1 1.1.1.1 Sat Nov 24 09:41 gone – no logout
root pts/1 2.2.2.2 Sat Nov 24 09:15 – 09:41 (00:26)
root pts/1 2.2.2.2 Sat Nov 24 09:13 – 09:14 (00:01)
root pts/1 3.3.3.3 Sat Nov 24 09:05 – 09:13 (00:08)
root pts/0 4.4.4.4 Fri Nov 23 14:35 – 10:12 (19:37)
root pts/0 5.5.5.5 Fri Nov 23 08:54 – 08:55 (00:00)
root pts/1 6.6.6.6 Thu Nov 22 17:09 – 17:58 (00:49)
root pts/0 7.7.7.7 Thu Nov 22 17:05 – 17:59 (00:53)

Linux查询指定日期之前的登录记录

总结:last命令用于查询系统登录记录。

赞(0)
分享到: 更多 (0)

学习QQ群:557371664

关注微信公众号自助视频学习

评论 抢沙发

评论前必须登录!