如何在Ubuntu上监控系统认证日志
如何监控系统登录
在配置用户之后,监控系统是身份验证管理的基本组成部分。
我们将在一个Ubuntu 22.04服务器上探索这些概念,但您可以在任何现代Linux发行版上进行跟随。您可以根据我们在Ubuntu 22.04上的服务器初始设置指南设置一个Ubuntu 22.04服务器进行本教程。
审核认证尝试
现代Linux系统将所有的身份验证尝试记录在一个独立的文件中。此文件位于/var/log/auth.log。您可以使用less命令查看此文件。
- sudo less /var/log/auth.log
May 3 18:20:45 localhost sshd[585]: Server listening on 0.0.0.0 port 22. May 3 18:20:45 localhost sshd[585]: Server listening on :: port 22. May 3 18:23:56 localhost login[673]: pam_unix(login:session): session opened fo r user root by LOGIN(uid=0) May 3 18:23:56 localhost login[714]: ROOT LOGIN on ‘/dev/tty1’ Sep 5 13:49:07 localhost sshd[358]: Received signal 15; terminating. Sep 5 13:49:07 localhost sshd[565]: Server listening on 0.0.0.0 port 22. Sep 5 13:49:07 localhost sshd[565]: Server listening on :: port 22. . . .
当你查看文件完成后,你可以使用q退出less。
如何使用“last”命令
通常,你只对最近的登录尝试感兴趣。你可以用last工具来查看这些。
- last
demoer pts/1 rrcs-72-43-115-1 Thu Sep 5 19:37 still logged in root pts/1 rrcs-72-43-115-1 Thu Sep 5 19:37 – 19:37 (00:00) root pts/0 rrcs-72-43-115-1 Thu Sep 5 19:15 still logged in root pts/0 rrcs-72-43-115-1 Thu Sep 5 18:35 – 18:44 (00:08) root pts/0 rrcs-72-43-115-1 Thu Sep 5 18:20 – 18:20 (00:00) demoer pts/0 rrcs-72-43-115-1 Thu Sep 5 18:19 – 18:19 (00:00)
这提供了另一个文件/ etc / log / wtmp中保存的信息的格式化版本。
根据第一行和第三行的判断,用户目前已登录系统。在其他已关闭的会话期间,系统记录了一组由连字符分隔的数值,提供了用户登录系统的总时长。
如何使用“lastlog”命令。
您还可以使用lastlog命令查看系统中每个用户上次登录的时间。
这些信息通过访问/etc/log/lastlog文件获取。然后根据/etc/passwd文件中的条目进行排序。
- lastlog
Username Port From Latest root pts/1 rrcs-72-43-115-1 Thu Sep 5 19:37:02 +0000 2013 daemon **Never logged in** bin **Never logged in** sys **Never logged in** sync **Never logged in** games **Never logged in** . . .
您可以查看系统上每个用户的最新登录时间。
请注意系统用户几乎都为“从未登录”。其中许多系统账户不会直接用于登录,所以这是正常现象。
结论是
在Linux上的用户认证是系统管理中相对灵活的领域。有许多使用广泛的工具可以实现相同目标的方式。
了解系统存储登录信息的位置非常重要,这样你就可以监控服务器上不符合你使用情况的变化。
接下来,你可能想学习如何添加和删除系统用户。