登录
首页 >  文章 >  linux

Linux登录日志查看方法详解

时间:2026-03-22 22:03:53 170浏览 收藏

本文系统讲解了在Linux系统中全面追踪用户登录活动的五大核心方法:通过last命令查看成功登录历史、lastb命令分析失败登录尝试、直接解析auth.log或secure认证日志获取详细上下文、利用journalctl精准筛选systemd下的实时登录事件,以及理解utmp/wtmp二进制文件的作用与验证方式;无论您是系统管理员排查安全风险,还是运维人员审计用户行为,这些实用、可操作的步骤都能帮助您快速定位“谁、何时、从哪、以何种方式”登录了系统,真正实现登录行为的可观测与可追溯。

linux怎么查看登录日志_linux检查登录记录【步骤】

如果您需要了解 Linux 系统中用户的登录活动,例如谁在何时通过何种方式(SSH、本地终端、图形界面)登录过系统,则需查阅系统记录的认证与会话日志。以下是查看登录日志的具体步骤:

一、使用 last 命令查看最近成功登录记录

last 命令从 /var/log/wtmp 文件中读取已终止的登录会话信息,显示包括用户名、终端、IP 地址、登录和登出时间等详细内容。

1、打开终端,输入命令:last

2、如需限制输出行数,可追加 -n 参数,例如:last -n 20 查看最近 20 条记录。

3、如需筛选特定用户,可在命令后添加用户名,例如:last john

二、使用 lastb 命令查看失败登录尝试

lastb 命令读取 /var/log/btmp 文件,专门用于展示所有失败的登录尝试(如密码错误、无效用户),该文件默认仅 root 用户可读。

1、切换至 root 用户或使用 sudo 执行:sudo lastb

2、限制输出数量示例:sudo lastb -n 15

3、检查某 IP 的失败记录,可结合 grep 使用:sudo lastb | grep '192.168.1.100'

三、直接查看 auth.log 或 secure 日志文件

系统认证事件(包括 SSH 登录、su 切换、sudo 操作等)被记录在 /var/log/auth.log(Debian/Ubuntu)或 /var/log/secure(RHEL/CentOS/Fedora)中,内容实时性强且包含详细上下文。

1、确认日志路径:运行 ls -l /var/log/auth.log /var/log/secure 2>/dev/null 查看哪个文件存在。

2、查看最近 50 行 SSH 登录相关记录:sudo tail -n 50 /var/log/auth.log | grep 'sshd.*Accepted\|sshd.*Failed'(Ubuntu)。

3、查看所有包含登录关键词的条目:sudo grep -i 'login\|logon\|session' /var/log/secure(CentOS)。

四、使用 journalctl 查看 systemd 日志中的登录事件

对于使用 systemd 的现代 Linux 发行版,登录事件也被记录在 journald 中,支持按服务、用户、时间范围精确过滤。

1、查看所有与登录相关的消息:sudo journalctl _COMM=login

2、查看 SSH 登录事件:sudo journalctl _COMM=sshd | grep 'Accepted\|Failed'

3、查看指定用户最近 1 小时内的登录活动:sudo journalctl _UID=$(id -u username) --since "1 hour ago" | grep 'session opened'

五、检查 utmp 和 wtmp 文件的原始状态

utmp 记录当前活跃会话(如 who、w 命令数据来源),wtmp 记录历史会话(last 命令数据来源),二者为二进制格式,需用专用工具解析。

1、查看当前登录用户列表:whow

2、检查 wtmp 文件最后修改时间以确认其是否更新:stat /var/log/wtmp

3、若需人工验证 wtmp 内容完整性,可运行:sudo strings /var/log/wtmp | head -n 10(仅作粗略参考,不可替代 last)。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>