如何查看 Linux 登录历史记录如何查看 Linux 登录历史记录如何查看 Linux 登录历史记录如何查看 Linux 登录历史记录
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何查看 Linux 登录历史记录

您可能想知道谁登录了您的系统以及从哪里登录。您还应该在系统上看到错误的登录尝试。了解如何在 Linux 中查看登录历史记录。

如果您有 Linux 服务器,则可能有多个用户访问该系统。当特定用户登录 Linux 系统时,您可能想知道谁登录了您的系统。您可能还想知道从哪个 IP 地址访问您的系统。

即使您没有多个用户,也可能有人尝试访问您的 Linux 服务器。相信我,这可能听起来很奇怪,但如今机器人尝试访问您的 Linux 服务器是很常见的事情。不相信我?只需检查服务器上的错误登录尝试,看看是否有人尝试登录您的系统。

让我向您展示如何查看 Linux 登录历史记录,以便您了解谁在访问您的系统以及从何处访问。

查看Linux登录历史记录

Linux 非常擅长保存系统上发生的所有事情的日志。很自然地,它还存储有关登录和登录尝试的日志。登录信息存储在三个地方:

  • /var/log/wtmp – 上次登录会话的日志

  • /var/run/utmp – 当前登录会话的日志

  • /var/log/btmp – 错误登录尝试的日志

让我们详细看看这些事情。

1.查看所有登录用户的历史记录

要查看系统上所有成功登录的历史记录,只需使用命令last。

last

输出应该如下所示。正如您所看到的,它列出了用户、用户访问系统的 IP 地址、登录日期和时间范围。 pts/0 表示通过 SSH 访问服务器。

abhi     pts/0        202.91.87.115    Wed Mar 13 13:31   still logged in
root     pts/0        202.91.87.115    Wed Mar 13 13:30 - 13:31  (00:00)
servesha pts/0        125.20.97.117    Tue Mar 12 12:07 - 14:25  (02:17)
servesha pts/0        209.20.189.152  Tue Mar  5 12:32 - 12:38  (00:06)
root     pts/0        202.91.87.114    Mon Mar  4 13:35 - 13:47  (00:11)

wtmp begins Mon Mar  4 13:35:54 2019

输出的最后一行告诉您 wtmp 日志文件的创建时间。这很重要,因为如果最近删除了 wtmp 文件,最后一个命令将无法显示该日期之前的登录历史记录。

您可能有大量的登录会话历史记录,因此最好通过 less 命令来传输输出。

2.查看某个用户的登录历史

如果您只想查看特定用户的登录历史记录,可以使用last命令指定用户名。

last <username>

您将仅看到所选用户的登录信息:

last servesha
servesha pts/0        125.20.97.117    Tue Mar 12 12:07 - 14:25  (02:17)
servesha pts/0        209.20.189.152  Tue Mar  5 12:32 - 12:38  (00:06)

wtmp begins Mon Mar  4 13:35:54 2019

3. 在登录历史记录中显示IP地址而不是主机名

您在之前的输出中看不到它,但默认情况下,最后一个命令显示主机名而不是用户的 IP 地址。如果您位于子网络上,您可能只会看到主机名。

您可以使用 -i 选项强制显示以前登录的用户的 IP 地址。

last -i

4.仅显示最近N次登录

如果您的系统有良好的正常运行时间,也许您的登录历史记录会很大。正如我之前提到的,您可以使用 less 命令或其他文件查看命令,例如 head 或 tail。

最后一个命令使您可以选择仅显示一定数量的登录历史记录。

last -N

只需将 N 替换为您想要的数字即可。您还可以将其与用户名结合起来。

5. 查看 Linux 服务器上所有错误的登录尝试

现在是重要的部分:检查服务器上的错误登录尝试。

您可以通过两种方式做到这一点。您可以将最后一个命令与 btmp 日志文件一起使用:

last -f /var/log/btmp

或者您可以使用lastb命令:

lastb

这两个命令都会产生相同的结果。 Lastb 实际上是指向指定文件的最后一个命令的链接。

root     ssh:notty    218.92.0.158     Wed Mar 13 14:34 - 14:34  (00:00)
sindesi  ssh:notty    59.164.69.10     Wed Mar 13 14:34 - 14:34  (00:00)
root     ssh:notty    218.92.0.158     Wed Mar 13 14:34 - 14:34  (00:00)
sindesi  ssh:notty    59.164.69.10     Wed Mar 13 14:34 - 14:34  (00:00)
root     ssh:notty    218.92.0.158     Wed Mar 13 14:34 - 14:34  (00:00)

错误登录可能是合法用户输入的错误密码。它也可能是一个机器人试图暴力破解您的密码。

你必须在这里分析一下,看看你是否认识日志中的IP。如果使用 root 用户从某个 IP 进行了过多的登录尝试,则可能有人试图通过暴力破解来攻击您的系统。

在这种情况下,您应该部署 Fail2Ban 来保护您的服务器。 Fail2Ban 将禁止您的服务器访问此类 IP,从而为您的服务器提供额外的保护层。

结论

我希望本教程教您查看 Linux 中的登录历史记录,现在您可以使用这些知识来更好地管理和保护您的 Linux 系统。

如果您喜欢这篇文章,请在社交媒体上分享并订阅我们的时事通讯以获取更多 Linux 相关教程。

©2015-2025 艾丽卡 support@alaica.com