快速高效的Linux登录日志筛选技巧 (linux 登录日志筛选)

Linux操作系统在服务器端及个人电脑中都得到广泛应用,因其高效、安全、稳定等特点备受青睐。然而,在系统管理中,监控系统的安全性尤为重要,而系统登录日志就是重要的监控信息之一。登录日志可以记录用户的登录信息及其他关键事件,帮助管理员识别潜在的威胁、检测被盗、加固系统安全性等。但是,日志文件往往体积巨大,需要花费大量的时间和资源来阅读和分析,因此,快速高效的日志筛选技巧显得十分重要。

本文将着重介绍如何利用常用的命令和工具,在Linux系统中快速高效地筛选登录日志信息,包括查找指定用户登录信息、查找指定时间段内的登录记录、排查登录失败等。

一、查找指定用户登录信息

在Linux系统中,可以使用last命令查看系统上所有用户(包括当前和过去的)的登录记录。但是,如果需要了解某个用户的登录情况,可以使用以下命令来查找:

last username

该命令可以列出指定用户的登录记录,显示登录时间、登录方式(SSH、telnet等)、登录IP地址等信息。例如,如果需要查找用户名为“testuser”的登录记录,可以输入以下命令:

last testuser

该命令将输出类似以下的结果:

testuser pts/0 192.168.0.21 Tue Oct 19 15:30 still logged in

testuser tty3 Tue Oct 19 14:48 – 14:53 (00:04)

testuser pts/1 192.168.0.22 Tue Oct 19 09:25 – 11:39 (02:14)

testuser pts/1 192.168.0.22 Mon Oct 18 15:10 – 16:13 (01:03)

可以看出,该用户在不同的终端和IP地址下进行了登录,并且有些登录仍然处于活动状态。如果需要查找特定用户最近的登录记录,可以使用以下命令:

last username -n 5

该命令列出指定用户最近的5次登录记录。

二、查找指定时间段内的登录记录

有时候需要查看某个时间段内的登录记录,以确定系统安全性或者排查问题。下面介绍几个命令来查找指定时间段内的登录记录。

1、使用last命令

last命令中可以使用“-since”和“-until”选项来指定时间段。例如,以下命令将显示指定时间段内的登录记录:

last -since 2023-09-01 -until 2023-09-30

其中,since参数指定开始时间,until参数指定结束时间。对于此命令,它将显示从2023年9月1日到9月30日之间的登录记录。

2、使用cat命令和auth日志文件

Linux系统中的auth日志文件记录了所有与系统安全相关的信息,包括用户的登录、认证和授权情况。因此,可以通过读取这个日志文件来查找指定时间段内的登录记录。以下是具体的步骤:

使用以下命令查看auth日志文件:

cat /var/log/auth.log

该命令将列出所有的登录记录和相关信息。然而,由于该文件通常非常大,因此需要使用grep命令来查找指定时间段内的记录。以下是一个例子:

cat /var/log/auth.log | grep “Sep 20 23:27”

上述命令将列出9月20日23:27时登录系统的所有记录。如果需要查找特定时间段内的记录,可以使用以下命令:

cat /var/log/auth.log | grep “Sep 20” | grep “23:2[45678]”

该命令列出9月20日23:24到23:28之间登录系统的记录。

三、排查登录失败

有时候,用户可能会出现登录失败的情况,例如用户名或密码错误等。以下是一些命令来查找登录失败的记录。

1、使用lastb命令

lastb命令用于显示最近的错误登录记录。例如,以下命令将列出最近10次的登录失败:

lastb -n 10

该命令将输出从当前到最近10次错误登录记录的信息,包括用户信息、时间、源IP地址等。

2、使用cat命令和auth日志文件

另一种查找登录失败记录的方式是读取auth日志文件。该文件记录了所有与系统安全相关的信息,包括失败的登录尝试。以下是一些命令来查找登录失败的记录:

cat /var/log/auth.log | grep “Fled”

该命令将列出所有失败的登录记录。

cat /var/log/auth.log | grep “Fled password for”

该命令将列出所有失败的登录尝试的相关信息。

在Linux系统使用中,查看和分析登录日志非常重要。使用以上介绍的,可以快速找到特定用户的登录信息、指定时间段内的登录记录、登录失败等关键信息,有助于提升系统安全性、检测潜在的威胁和优化系统管理。

相关问题拓展阅读:

linux服务器中怎么查看日志内容

登录

kbkiss

Linux查看日志常用命令

1.查看日志常用命令

    tail:  

n  是显示行号;相当于nl命令;例子如下:

tail -100f test.log      实时监控100行日志

tail  -n  10  test.log   查询日志尾部最后10行的日志;

tail -n +10 test.log    查询10行之后的所有困渗日志;

    head:  

跟tail是汪兆脊相反的猜罩,tail是看后多少行日志;例子如下:

head -n 10  test.log   查询日志文件中的头10行日志;

head -n -10  test.log   查询日志文件除了最后10行的其他所有日志;

    cat: 

tac是倒序查看,是cat单词反写;例子如下:

cat -n test.log |grep “debug”   查询关键字的日志

 

2. 应用场景一:按行号查看—过滤出关键字附近的日志

     1)cat -n test.log |grep “debug”  得到关键日志的行号

     2)cat -n test.log |tail -n +92|head -n 20  选择关键字所在的中间一行. 然后查看这个关键字前10行和后10行的日志:

tail -n +92表示查询92行之后的日志

head -n 20 则表示在前面的查询结果里再查前20条记录

 

3. 应用场景二:根据日期查询日志

      sed -n ‘/:17:20/,/:17:36/p’  test.log

      特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效;

先 grep ‘:17:20’ test.log 来确定日志中是否有该 时间点

 

4.应用场景三:日志内容特别多,打印在屏幕上不方便查看

    (1)使用more和less命令,

如: cat -n test.log |grep “debug” |more     这样就分页打印了,通过点击空格键翻页

    (2)使用 >.txt 将其保存到文件中,到时可以拉下这个文件分析

如:cat -n test.log |grep “debug”  >debug.txt

关于linux 登录日志筛选的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 快速高效的Linux登录日志筛选技巧 (linux 登录日志筛选)